您的位置:首页 > 运维架构 > Linux

Linux 管道、命令替换、重定向

2016-09-06 09:16 483 查看

Linux 管道、命令替换、重定向输出

管道:将一个命令的输出,传给另外一个命令,作为另外一个命令的输入
使用方法: 命令1 | 命令2 | 命令3 | 命令N (符号“|”)
使用举例:
ls -Rl /etc |more//分页显示 /etc目录下的文件结构
cat /etc/passwd | wc//统计passwd文件
cat /etc/passwd |grep lrj//找到passwd中lrj所在行
dmesg | grep eth0//找到eth0的启动信息
man bash | col -b > bash.txt//将bash手册按行保存到bash.txt中

ls -l | grep "^d"//列出目录
ls -l * | grep "^-" | wc -l//统计文件的数目

wall(warning all):通知所有人
使用键盘上数字1左边的符号(·)可以使用命令替换
如wall `date`,则会通知所有用户时间

重定向输出:把命令执行的结果重新输入到一个文件中
如:ls > cmd.txt
>输出一遍,>>输出两遍
如:lssss 2> cmd.txt 错误重定向

重定向输入:
如:wall < aa.txt//广播aa.txt中的内容,重定向输入

-------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------

如何修改系统的默认启动级别

1.文件/etc/inittab
2.initdefault所在行



这种办法已经修改不了启动级别,参考地址:http://blog.sina.com.cn/s/blog_6c9d65a10102uykv.html

修改方法:

#修改开机默认运行级别

systemd使用链接来指向默认的运行级别。

由/etc/systemd/system/default.target文件中决定

切换到运行级3:

先删除:/etc/systemd/system/default.target

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target

#用这个也可以

systemctl set-default multi-user.target
systemctl set-default multi-user.target指令帮助完成启动文件指向multi-user.target

--------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------

如何把文件传到Linux机器中去(在Linux和其他机器之间共享文件)

1.共享文件夹(很少用)
2.ftp(Linux作为ftp server,windows作为client,往Linux上传)------vsftp------

vsftp安装
centos7下:yum install ftp vsftpd //安装ftp包和vsftp包
参考地址:http://jingyan.baidu.com/article/86fae346d536023c48121a50.html
注意防火墙的配置和SELinux配置也比较重要,可能会引起只可以本级ftp登录,网络ftp无法登录的情况。

3.客户端使用LeafFTP进行匿名登录,可以进行下载文件

4.配置允许root用户上传,rpm -qc vsftpd,查看vsftpd配置文件所在的路径

5.删除/etc/vsftpd/vsftpd.conf和/etc/vsftpd/user_list中的root用户,这样可以实现root用户的的ftp登录和上传

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Linux安装jdk,tomcat,mysql

centos跟换默认jdk版本->http://www.365dw.cn/495.html

卸载CentOS7-x64自带的OpenJDK并安装Sun的JDK7的方法->http://www.cnblogs.com/CuteNet/p/3947193.html

强制卸载不检查依赖:rpm -e --nodeps pakagename

卸载完成之后使用,rpm -ivh pakagename 安装好jdk,完成之后设置JAVA_HOME,命令行直接输入JAVA_HOME=/usr/java/jdk1.7.0_79/ 可以直接设置,但是只是本次登陆有效;更专业的做法是修改/etc/profile文件,查看profile文件的说明,其仅对登陆用户有效的配置。在文件结尾添加JAVA_HOME=/usr/java/jdk1.7.0_79/  换行 export JAVA_HOME,重启Linux

------------
------------

下载tomcat7,通过vsftp上传至Linux
用gzip -d filename解压缩成tar文件,再用tar -xvf filename解压缩
注查看进程的指令:ps -ef | grep tomcat
使用命令行上网的指令:wget http://localhost:8080 现象描述:在linux本机测试wget可以实现http访问,进入宿主机进行ping指令没有问题,但是http访问不行
查看防火墙状态:systemctl status firewalld 结果显示防火墙开启,关闭防火墙systemctl stop firewalld,开机禁用防火墙systemctl disable firewalld

tomacat服务器设置为开机启动:
修改/etc/rc.local文件,添加环境变量及tomcat的启动脚本,JAVA_HOME=/....... 换行 export JAVA_HOME 换行 /tomcat/..../bin/startup.sh start
最后注意chmod +x /etc/rc.local ,原先我的rc.local本来就是可执行文件,但是不执行这句指令,reboot之后不会有tomcat进程,所以必须还要执行这句才可以。

----------------
---------------
下载mysql server和client,安装教程:http://blog.sina.com.cn/s/blog_87fad56a0101fv1f.html
注意下载时,找不到centos对应的版本,大家选择5.5或者5.6版本就可以了,再选择Linux generic即可。

冲突:安装mysql与centos7自带的mariadb冲突,决定强制卸载(--nodepds)
问题:缺少perl支持,data=dumper,常见解决方案:http://blog.sina.com.cn/s/blog_694864e60102vaij.html 和 http://blog.csdn.net/typa01_kk/article/details/49059729
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linuxjdktomcatmysql