记录Shell的点滴

一、shell变量$#,$@,$0,$1,$2的含义解释
$$ 
Shell本身的PID(ProcessID) 
$! 
Shell最后运行的后台Process的PID 
$? 
最后运行的命令的结束代码(返回值) 
$- 
使用Set命令设定的Flag一览 
$* 
所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数
$@ 
所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数
$# 
添加到Shell的参数个数 
$0 
Shell本身的文件名 
$1~$n 
添加到Shell的各参数值。$1是第1参数、$2是第2参数

eg:

添加可执行权限:
 
传入两个参数 qin kai  执行shell脚本
 
tar解压缩的命令
下面的命令的独立的命令,压缩解压都要用到其中一个,可以和别的命令连用。
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

参数-f是必须的
-f: 使用档案名字,这个参数是最后一个参数,后面只能接档案名。

压缩
tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

解压
tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2   //解压 tar.bz2tar –xZvf file.tar.Z //解压tar.Z

cut
cut命令主要是接受三个定位方法:
第一,字节(bytes),用选项-b;其中-nb不会将多字节字符分开
第二,字符(characters),用选项-c
第三,域(fields),用选项-f
test.log的内容:
192.168.1.100 - - [12/Dec/2012:08:54:18 +0800] "GET /icons/folder.gif HTTP/1.1" 200 225

字节切分:


字符切分:

域:-d 用来指定分隔符


sort(分类)
sort命令的一般格式为:
sort -cmu -o output_file [other options] +pos1 +pos2 input_files
下面简要介绍一下sort的参数:
-c 测试文件是否已经分类。
-m 合并两个分类文件。
-u 删除所有复制行。
-o 存储sort结果的输出文件名。

其他选项有:
-b 使用域进行分类时,忽略第一个空格。
-n 指定分类是域上的数字分类。
-t 域分隔符;用非空格或t a b键分隔域。
-r 对分类次序或比较求逆。
+n n为域号。使用此域号开始分类。
n n为域号。在分类比较时忽略此域,一般与+n一起使用。
post1 传递到m,n。m为域号,n为开始分类字符数;例如4,6意即以第5域分类,从第7个字符开始

uniq
显示唯一的行,对于那些连续重复的行只显示一次
uniq命令不加任何参数,仅显示连续重复的行一次
-c 参数显示文件中每行连续出现的次数
-d选项仅显示文件中连续重复出现的行
-u选项显示文件中没有连续出现的行

head 
默认显示前10行记录,也可以由用户自己指定:head -n 30 

tail -n 5 
显示输入文件的最后5行

加入环境变量
export PATH=$PATH:/home/lm/apache-jena-2.7.4/bin

查看文件大小
du -sh *

查看系统所用用户
cat /etc/shadow

查看端口占用
lsof -i:8000
netstat -tln | grep 8080

查看操作系统位数:
getconf LONG_BIT 

修改ssh服务的端口:
/etc/ssh/sshd_config

查看占用cpu的进程:
ps -eo pcpu,pid,user,args | sort -k 1 -r | head -16

输出指定目录下的文件名:
#!/bin/bash
path=$1 
cd $path
for filename in `ls`
do
    echo $filename 
done
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值