1、pwd(Print Working Directory) 显示当前目录
-L(logical)显示当前目录
-P(physical)无选项 默认使用-P显示当前目录的实际物理地址
例:
[root@rudder home]# pwd #显示当前目录
/home
[root@web mail]# pwd -P #目录是软连接,显示实际物理地址
/var/spool/mail
[root@web mail]# pwd -L #-L显示,逻辑地址
/var/mail
2、cd 目录切换命令
例:
[root@localhost ~]# cd /home/ #切换到home目录
[root@localhost home]# cd - #返回切换到home前的目录
/root
[root@localhost ~]# cd ../ #切换到上一级目录
[root@localhost /]# cd ~ #切换当前用户的home目录
[root@localhost ~]#
# cd / # 系统根目录
# cd # root根目录
# cd ../../ #返回上上一层目录
3、用法:mkdir [选项]… 目录…
若指定目录不存在则创建目录。
长选项必须使用的参数对于短选项时也是必需使用的。
-m, --mode=模式 设置权限模式(类似chmod),而不是rwxrwxrwx 减umask
-p, --parents 需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理
-v, --verbose 每次创建新目录都显示信息
-Z, --context=CTX 将每个创建的目录的SELinux 安全环境设置为CTX
例:
[root@localhost ~]# mkdir aaa #创建目录
[root@localhost ~]# mkdir -m a=rw bbb #创建指定属性的目录
[root@localhost ~]# mkdir -p 111/abc #创建目录,父目录存在,建之
# mkdir -p /ms/{sales,hr,web} #创建一个名为/ms的目录,其中有sales、hr、web的子目录
4、rmdir用法:rmdir [选项]… 目录…
删除指定的空目录。
-p, --parents 删除指定目录及其上级文件夹,例如"rmdir -p a/b/c’“与"rmdir a/b/c a/b a’” 基本相同
-v, --verbose 输出处理的目录详情
例:
[root@localhost ~]# rmdir test #删除test目录,注意必须是空目录
[root@localhost ~]# rmdir -p a/b/c #删除指定目录及其上级文件夹
5、vim编辑文件
例:
[root@linux test]# vim test.php #编辑文件
输入i进入编辑状态,退出编辑按ESC键,不保存退出:q!,保存退出:wq,输入/进入搜索
6、cp复制
用法:cp [选项]… [-T] 源文件 目标文件
或:cp [选项]… 源文件… 目录
或:cp [选项]… -t 目录 源文件…
将源文件复制至目标文件,或将多个源文件复制至目标目录。
例:
[root@localhost www]# cp -p test.rb /home/test #将test.rb copy到test目录,并且保留原文件的属性
[root@localhost www]# cp -r Dir/ /home/test #将Dir目录copy到test目录下
[root@localhost www]# cp -fr Dir/* /home/test #将Dir下面的所有文件强制copy到test目录下
[root@localhost www]# cp test.rb{,.bak} #备份test.rb,并在尾部加上.bak后缀
# cp -u -v file1 file2 #复制文件,只有源文件较目的文件的修改时间新时,才复制文件
# cp file1 file2 #将文件file1复制成文件file2
# cp -i file1 file2 #采用交互方式将文件file1复制成文件file2
# cp -f file1 file2 #将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式
# cp -R dir1 dir2 #将目录dir1复制成目录dir2
# cp -R file1 file2 file3 dir1 dir2 #同时将文件file1、file2、file3与目录dir1复制到dir2
# cp -p a.txt tmp/ #复制时保留文件属性
# cp -P /var/tmp/a.txt ./temp/ #复制时保留文件的目录结构
# cp -b a.txt tmp/ #复制时产生备份文件
# cp -b -V t a.txt /tmp #复制时产生备份文件,尾标 ~1~格式
# cp -b -S _bak a.txt /tmp #指定备份文件尾标
7、mv 移动(复制删除新建意思)
用法:mv [选项]… [-T] 源文件 目标文件
或:mv [选项]… 源文件… 目录
或:mv [选项]… -t 目录 源文件…
将源文件重命名为目标文件,或将源文件移动至指定目录。
[root@linux ~]# mv abc abc.php #将abc移动成abc.php
[root@linux ~]# mv test.php{,.sh} #将test.php增加后辍
[tank@localhost ~]$ mv aaa bbb #将目录或者文件重命名,如果存在bbb目录,则是将aaa移到bbb目录下
8、find查找文件
find 查找目录和文件
find 路径 -命令参数 [输出形式]
例:
a.通过名字查找
[zhangy@BlackGhost ~]$ find ~ -name memcached.pid -print #查找home目录下文件名为memcache.pid的文件
/home/zhangy/memcached/memcached.pid
[zhangy@BlackGhost ~]$ find . -name "*.pid" -print #.代表当前目录,查找所有以pid结尾的文件
./memcached/memcached.pid
./.tencent/qq/95219454.pid
[zhangy@BlackGhost ~]$ find ~ -name "[0-9]*.pid" -print #查找以数字开头的所有pid文件,在这里要说[0-9]*不能匹配23,它跟一般的语言类正则不太一样,shell里面的*可以代表一切字符(单个,多个都行),如果想匹配2345只能这样写[0-9][0-9][0-9][0-9]
/home/zhangy/.tencent/qq/95219454.pid
[zhangy@BlackGhost ~]$ find /home/zhangy/.tencent/ -name "[0-9]*.pid" -print #在.tencent文件夹下面找pid文件
/home/zhangy/.tencent/qq/95219454.pid
b,通过文件权限来查找
[zhangy@BlackGhost css]$ find ~ -perm 755 -print |more #~代表的是$home目录,查找权限为755的文件
/home/zhangy/www/css2/c_textshadow.html
/home/zhangy/www/css2/c_textautospace.html
[zhangy@BlackGhost css]$ find . -perm 700 -name "u_*" -print |more #查找所有以产u_开头的,并且权限为700的文件
./css2/u_length_cm.html
./css2/u_length_px.html
c.prune来忽略目录来查找
[zhangy@BlackGhost download]$ find . -name "*.gz" -prune -o \( \! -name aaa \) -print #查找在前目录中,不在以aaa结尾的目录中的,不以gz结尾的文件
.
./eaccelerator-0.9.5.3.tar
./fix-crash-in-excerpts.patch
./AddFeed_Widget_WordPress_Plugin.zip
./jQuery china-addthis plugin 1.07.rar
d,根据文件类型来查找文件
[zhangy@BlackGhost download]$ find . -type d -print #查找当前目录下面的目录
.
./ddd
[zhangy@BlackGhost download]$ find . ! -type d -print #找当前目录下面的非目录文件
./eaccelerator-0.9.5.3.tar
./haproxy-1.3.15.7.tar.gz
./fix-crash-in-excerpts.patch
f.根文件的修改时间来查找
[zhangy@BlackGhost download]$ find /home/zhangy -mtime -5 -print #5天修改过的文件,- 表示以内
/home/zhangy/www/css2/c_textshadow.html
/home/zhangy/www/css2/c_textautospace.html
[zhangy@BlackGhost download]$ find /home/zhangy -mtime +5 -print #查找5天前修改过的文件,+表示以前
/home/zhangy/www/test.php
[root@vmx14420 www]# find ./ -mmin -5 -print #查找5分钟以内修改过的文件
./cache/index.html
# find .|xargs grep -ri "656122" -l|uniq #按照文件内容查找, 并列出文件名字
9.ps–查进程
root@test001:~ # ps -aux | grep named #查看named进程详细信息
root 579 0.0 11.8 68268 26980 v0- I 18:14 0:00.33 /usr/local/named/sbin/named -gc /etc/named.conf
root 982 0.0 0.1 412 328 1 R+ 21:29 0:00.00 grep named
10.netstat - 显示网络连接,路由表,接口状态,伪装连接,网络链路信息和组播成员组。
[root@localhost ~]# netstat -anp |grep 3306 -c #查看3306 端口(mysql)的链接数
11.kill----结束进程
[root@redhat ~]# kill 1908 #杀死进程
[root@redhat ~]# kill -KILL 1908 #强制杀死进程
[root@redhat ~]# kill -9 6985 #彻底杀死进程
[root@redhat ~]# kill -u tank #杀死指定用户的所有进程
12.locate–查找
[root@localhost ~]# locate ~/install #查找当前目录下以install开头的文件
/root/install.log
/root/install.log.syslog
[root@localhost ~]# locate -i ~/install #查找当前目录下以install开头的文件,不区分大小写
/root/install.log
/root/install.log.syslog
[root@localhost ~]# locate -i /etc/fuc #查找/etc目录下面以fuc开头的文件,不区分大小写
未完待续…