shell的一些笔记

来源:互联网 发布:三星智能电视直播软件 编辑:程序博客网 时间:2024/05/22 14:50

如何使用基于SSH的scp远程复制文件?如何利用python传?
scp /home/amazing/felix.tar.gz root@远端ip:/home/dsp

python传:pytyon -m SimpleHTTPServer 8085 +wget


如何查看本机外网ip?curl ident.me

#返回IP和地区:curl cip.cc


如何将标准输出和错误输出同时重定向到同一位置?
方法一:
2>&1 (# ls /usr/share/doc > out.txt 2>&1 )
方法二:
&> (# ls /usr/share/doc &> out.txt )


shell遇到”>”操作符,会判断右边文件是否存在,如果存在就先删除,并且创建新文件。不存在直接创建。 无论左边命令执行是否成功。右边文件都会变为空。
“>>”操作符,判断右边文件,如果不存在,先创建。以添加方式打开文件,会分配一个文件描述符[不特别指定,默认为1,2]然后,与左边的标准输出(1)或错误输出(2) 绑定。


使用其他某个命令并将前一个命令的输出作为参数: xargs

例如: ls |grep -v 'nohup.out\|logs\|4.txt\|data' |xargs tar -czvf test.tar.gz

抑或:tar -czvf test.tar.gz $(ls | grep -v 'nohup.out\|logs\|4.txt\|data')


[变量系列]

#!/bin/shecho "number:$#"echo "scname:$0"echo "first :$1"echo "second:$2"echo "argume:$@"echo "show parm list:$*"echo "show process id:$$"echo "show precomm stat: $?"
说明:

$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误


安装软件:rpm -ivh xxx.rpm

查看安装目录:rpm -ql xxx

清除掉原配置信息:> /xxx/xxx/xxx.conf

重新编辑原配置信息:vim /xxx/xxx/xxx.conf               wq保存

关闭防火墙:service iptables stop

                        chkconfig iptables off

启动程序:service xxx  start


跟 service相关的目录和文件

/etc/init.d :在这里边可以添加新的服务配置,

服务启动前先更改默认权限:chmod 750 xxx


查看机器信息:uname -a


负载均衡的三个功能:

1、请求转发

2、故障移除(切备)

3、恢复添加


多台服务器session的共享:

放在缓存中,如:redis(必须为集群)


0 0
原创粉丝点击