Shell复习
1. wc -l client.c 查看文件行数2.ls --help查看帮助与man ls
3.ls --author -l显示所属者
4.关机 sudo shutdown now(-r 重启) 只有超级用户可以使用
5type ls 显示类别
$ type cd
cd 是 shell 内嵌
$ type who
who 已被哈希 (/usr/bin/who)
6 花括号$ ls *{m,e}.cMainForm.cservice.c 7 $ ./eclipse & 结尾加入&后台运行 8 mv lib.t lib.txt 修改文件名 移动文件 9 ln lib.txtlk创建链接文件 10$ stat client.c显示文件状态 File: "client.c" >Device: 700h/1792d Inode: 656336 Links: 1Access: (0600/-rw-------)Uid: ( 1000/ssj234) Gid: ( 1000/ssj234)Access: 2012-02-12 18:58:49.309045671 +0000Modify: 2012-02-10 18:56:06.214830648 +0000Change: 2012-02-10 18:56:06.338830654 +0000 11touch client.c更新时间/创建新文件$ touch client.c $ stat client.c File: "client.c" >Device: 700h/1792d Inode: 656336 Links: 1Access: (0600/-rw-------)Uid: ( 1000/ssj234) Gid: ( 1000/ssj234)Access: 2012-02-12 19:53:21.041120324 +0000Modify: 2012-02-12 19:53:21.041120324 +0000Change: 2012-02-12 19:53:21.041120324 +0000 12cat lib.txt| tr l ctr 将字符l 替换为c 13tee定向到文件并继续传递到下一个管道cat lib.txt| tee c.dat |sort14df 显示已挂载文件系统到可用容量fdisk 分区 15tar本身没有压缩能力 调用其他程序来处理tar -czvf myarchive.tar.gz mydir将mydir中文件压缩为 myarchive.tar.gz tar -tzvf myarchive.tar.gz mydir列出myarchive.tar.gz中文件 tar -xzvf myarchive.tar.gz mydir解压 16uptime 查看系统负载程度20:14:28 up1:32,1 user,load average: 0.05, 0.14, 0.15 17free显示内存情况top显示进程占用资源情况 18 users 当前登录的用户who 每个终端上到用户 19 uname显示系统信息-a 所有 -r 内核信息 -p cpu型号 20 host www.baidu.com 查询主机名称,IP地址和DNS信息$ host www.baidu.comwww.baidu.com is an alias for www.a.shifen.com.www.a.shifen.com has address 119.75.217.109www.a.shifen.com has address 119.75.218.70 21watch 每隔一段时间运行命令watch -n 1 echo $PATHat安排某工作于未来时间执行一次crontab 安排某工作于未来时间定期执行 crontab minute hour day month week commancrontab 0,30 18-23 * * * /aap/bin/da.sh每天18-23点间隔30分钟 执行一次22 du 查看文件占用磁盘信息
--------------20120303
1.大小比较
-eq 等于-gt 大于-lt小于
-ne 不等于-ge 大于等于-le 小于等于
2.参数到获得
var=0
while [ "$#" -gt 0 ]
do
echo "var=$var,parameter is $1"
shift
let var++
done
运行
ssj234@ubuntu:~/shell_tch$ sh1.sh sjd jdsjd
var=0,parameter is sjd
var=1,parameter is jdsjd
-----------------------------
参数到切换使用shift 参数自增使用let var++
3.字符串比较用 =
#!/bin/bash
#some info
read user
if [ "$user" = "" ]
then
echo "You did not enter any info"
else
echo "$user"
fi
4.获取所有命令行参数
for var in $*
do
echo "this var is $var"
done
$sh1.sh 1 2
this var is 1
this var is 2
===
$@和$*功能相同
"$@"和"$*"功能不同
"$@"将获取参数列表,并进行分隔
“$*”将整个参数列表作为一个参数
5
页:
[1]