你的位置:首页 > 脚本语言
1.gzexe -d 解密
2.Address 192.168.3.202 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
解决方法:vim /etc/ssh/ssh_config 修改GSSAPIAuthentication 值为 no
3.打印指定行一下
sed -n -i '/PID/,+600000000 p' file
4.sed用法
在第一行插入数据 sed -i 1"i\\$icare_ip" file 只打印第三行 sed -n '3p' datafile 只查看文件的第100行到第200行 sed -n '100,200p' file 删除第二到第五行 sed '2,5d' datafile 删除包含"2014-10-19"的行到包含"2014-10-29"的行之间的行 sed '/2014-10-19/,/2014-10-29/d' datafile 删除包含"My"的行到第十行的内容 sed '/My/,10d' datafile sed选项-e用于进行多重编辑 sed -e '1,10d' -e 's/My/Your/g' datafile
5.交互式输入
{
echo "who"} | ssh 192.168.48.736.shell中的集合
list1=(`cat ../tools/list | grep -v \# | awk '{print $1}' | sed "1,1d"`)for((i=0;i<${#list1[@]};i++));dosh ./${list1[i]}.wy
done7.判断是否存在
if [ ! -d $bak_mk ]; then mkdir $bak_mk fi
8.针对^M
dos2unix
9.获取最后登录系统的ip
last -n 5
10.AWK统计某个文件夹下的文件占用的字节数
ls -l |awk 'BEGIN {size=0;} {size=size+$5;} END{print "[end]size is ", size}'
[end]size is 8657198
ls -l |awk 'BEGIN {size=0;} {size=size+$5;} END{print "[end]size is ", size/1024/1024,"M"}'
[end]size is 8.25889 M关于find搜索定位:
11.文件名 搜索文件
locate one.sh
12.查找后执行
find ./ -name 192.168.48.154 -exec cat > 1 {} \;13.删除空文件
find ./ -type f -size 0 -exec rm -rf {} \;14.查找大小为0的文件或空目录
find ./ -empty -type f / d
15.查大于512k的文件
find /home -size +512k
16.将多个文件打印到一个文件中
find ./ -name "[1-9].sh" -exec cat > 3 {} \;17.目录下过滤文件夹
find ./ ! -type f
18.批量修改
find ./ -name "[1-9].sh" -exec sed -i s/0/9/g {} \;19.-o 相当于且
find ./ -name "1.sh" -o -name "2.sh"
20.两天内改动
find /home -mtime -2
21.两分钟内改动
find /home -mmin -2
22.10分钟内访问的文件
find /home -amin -10
23.2小时内访问的文件
find /home -atime -2
24.将find出来的东西拷到另一个地方
find *.c -exec cp '{}' /tmp ';'25.检查/root目录挂载在那个磁盘分区上
df -h /root
26.软连接、硬链接
ln -s /home /root/home ln -b /home/run.sh /root/run.sh
27.解压到指定目录
tar zxvf /filename.tar.zip -C /home
28.vi文书
gg第一行G最后一行 d1G删除光标所在行到第一行 dG删除光标所在行到最后一行 yy复制光标所在一行 A在光标所在最后字符处开始插入 ZZ保存退出
29.^M 乱码
yum install dos2unix
30.修改linux登录后信息
vi /etc/motd
31.定时任务脚本
cmd="cd /root/polling/bin/ && /root/polling/bin/run.sh" echo -n "* " >> /var/spool/cron/root echo -n "6 " >> /var/spool/cron/root echo -n "* " >> /var/spool/cron/root echo -n "* " >> /var/spool/cron/root echo -n "* " >> /var/spool/cron/root echo $cmd >> /var/spool/cron/root
32.组网信任
{
echo -e "\n"
} | ssh-keygen -t rsa -P ''
cp -r ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
cd ~/.ssh
scp -r id_rsa.pub $ip:/root/.ssh/$ip
ssh $ip 'touch ~/.ssh/authorized_keys && chmod 644 ~/.ssh/authorized_keys'
ssh $ip "cat ~/.ssh/$ip >> ~/.ssh/authorized_keys"33.关于shell入参处理
$0 脚本名字
$1 位置参数 #1
$2 - $9 位置参数 #2 - #9
${10} 位置参数 #10
$# 位置参数的个数
"$*" 所有的位置参数(作为单个字符串) *
"$@" 所有的位置参数(每个都作为独立的字符串)
${#*} 传递到脚本中的命令行参数的个数
${#@} 传递到脚本中的命令行参数的个数
$? 返回值
$$ 脚本的进程ID(PID)
$- 传递到脚本中的标志(使用set)
$_ 之前命令的最后一个参数
$! 运行在后台的最后一个作业的进程ID(PID)34.使用cut切分
echo 1:2:3 | cut -d ':' -f 2
echo 1:2:3 | awk -F ':' {'print $2'}35.egrep扩展
cat 1.sh | grep -v 5 | grep -v 8 cat 1.sh | egrep -v '5|8'ls | egrep ' lsit1.sh|tools.sh' #可以同时查找多个 egrep "go?d" tools.sh #?一个字符 * 多个字符
36.read命令带描述
read -p "uname:" name
37.test命令
#判断是否存在目录/文件 test -e /home && echo ok || echo no [ "a" == "ad" ] && echo yes || echo no #判断参数是否相等 test $a -eq $b && echo yes || echo no test $a != $b && echo yes || echo no -eq 相等 -ne 不相等 test "d" = "d" -o "a" = "d" && echo yes || echo no -o 并 -a 且
38.进程树
ps -axjf
文章来源:https://www.cnblogs.com/Javame/p/3867686.html

- 发表评论
- 查看评论
【暂无评论!】发表评论: