全部博文(556)
分类: LINUX
2013-11-11 22:08:09
linux常用命令讲解
一、查看一个目录的内容
1.ls
显示当前目录的内容
2.ls 路径
ls /home/cyg
查看/home/cyg目录的内容
3.ls -l
显示当前目录下文件的属性信息
-rw-r--r-- 1 cyg cyg 29 2012-07-20 09:54 hello.c
drwxr-xr-x 6 cyg cyg 4096 2012-07-20 08:32 jeffy-vim-read
打头字母(bcd - lps):
- : 普通文件
d : 目录文件
b : 块设备文件
c : 字符设备文件
p : 管道文件(FIFO)
l : 链接文件
s : 本地套接字文件
权限:
A B C
rwx r-x r-x
111 101 101
A:文件所有者的权限(读、写、执行 : 7)
B:文件所在组的权限(读、执行 : 5)
C:其他用户的权限(读、执行 : 5)
文件的链接个数: 6
文件的所有者: cyg
最后一次修改的时间
文件所在的组: cyg
文件的大小 : 4096
4.查看单个文件的属性信息
ls -l 文件名
5.ls -a
显示当前目录下所有文件(包括隐藏文件)
6.ls *
递归一级显示当前子目录的内容
二、查看一个文件的内容
1.cat
cat hello.c
在终端显示hello.c的内容
2.cat -n
cat -n hello.c
查看hello.c文件的时候显示行号
3.less/more分屏显示一个文件的内容
less /etc/passwd
分屏显示/etc/passwd的内容,按"回车键"可以向后翻阅,q键退出
more /etc/passwd
分屏显示/etc/passwd的内容,按"b键"向前翻阅,"d键"向后翻阅
三、删除文件
1.rm 文件名
rm hello.c
删除hello.c文件
2.删除一个目录
rm -r 目录名
rm -r workdir
删除workdir目录
3.强制删除(-f)
rm -rf 文件(普通文件、目录都可以)
强制删除这个文件
四、拷贝文件
1.把文件拷贝到其他目录
cp 文件名 路径
注意:拷贝一个目录的时候需要在最后跟上-a选项
A.拷贝目录
cp dir /home/linux -a
B.拷贝文件
cp hello.c /home/linux
2.备份
cp file bakfile
将当前目录下的file文件备份为bakfile文件
注意:备份一个目录的时候需要加上"-a"选项
五、移动文件
1.移动文件到其他目录
mv hello.c /home/linux
将当前目录下的hello.c文件移动的/home/linux下
mv dir /home/linux
将当前目录下的dir目录移动到/home/linux下
2.重命名
mv hello.c test.c
将当前目录下的hello.c文件改名为test.c文件
mv dir newdir
将当前目录下的dir改名为newdir目录
六、创建目录
mkdir dir
在当前目录创建dir目录
mkdir -p dir/dir1/dir2
创建多级目录
七、删除目录
rmdir dir
注意:dir此时必须为空目录
练习:
1.将/etc/passwd文件拷贝到用户主目录
2.将用户主目录下的passwd文件备份为passwd-bak
3.在用户主目录下新建目录test_dir
4.将passwd-bak移动到test_dir目录下
5.将test_dir目录下的passwd-bak文件改名为passwd
6.将test_dir目录拷贝到你的共享目录下
7.将共享目录下的test_dir目录改名为dir
8.删除以上产生的文件
八、切换目录
1.cd 回车键
回到用户主目录
2.cd ..
回到上一级目录
3.cd -
回到上一次操作的目录
4.进入当前目录下的子目录
cd 目录名
5.切换到其他目录
cd path
cd /mnt/hgfs/share
切换到/mnt/hgfs/share目录下
九、查找字符串
1.grep "string" file
在file文件中搜索出含有"string"的字符串的行
显示行号:grep -n "string" file
2.grep "^string" file
在file文件中搜索出以"string"开头的行
3.grep "string$" file
在file文件中搜索出以"string"结尾的行
4.grep "^string$" file
在file文件中搜索出只含有"string"的行
5.grep "string" *
在当前目录下的所有文件中搜索含有"string"的行(不包括子目录)
6.grep "string" * -nR
在当前目录下的所有文件中搜索含有"string"的行(包括子目录)
十、查找文件
find -name file
在当前目录下查找file文件(包括子目录)
十一、显示文件开头
head -n file
从文件的头显示 n 行
十二、显示文件结尾
tail -n file
从文件的尾部倒数 n 行
十三、按次序显示文件的内容
sort test
将test文件中的行按ASCII码的标准从小到大排序
sort -r test
从大到小排序
sort -n test
按十进制标准排序(从小到大);
sort -n -r test -o test
将test文件以十进制标准从大到小排序,并且将结果输出到test文件中
十四、去掉文件中相邻重复的行
uniq test
去掉test文件中相邻的行
十五、比较两个文件的内容是否一样
diff test1 test2
十六、查看文件的类型
file a.out
十七、查看shell变量的内容
echo $PATH
查看PATH环境变量的内容
十八、显示系统时间
date
十九、压缩文件
1.gzip格式压缩
gzip hello.c
压缩成hello.c.gz
2.bzip2格式压缩
bzip2 hello.c
压缩成hello.c.bz2
注意:不能对一个目录文件压缩
二十、解压缩文件
1.解压以gzip压缩的文件
gunzip hello.c.gz
解压成hello.c文件
2.解压以bzip2压缩的文件
bunzip2 hello.c.bz2
解压成hello.c文件
二十一、(tar)打包
-c 创建
-x 释放
-z gzip格式操作
-j bzip2格式操作
-v 显示中间的过程信息
-f 指定文件名
1.把一个目录打包
tar -cvf 目录名.tar 目录
eg:tar -cvf dir.tar dir
将dir目录打包成dir.tar文件(注意:dir目录依然存在)
2.解一个.tar包文件
tar -xvf dir.tar
对dir.tar包文件进行解包操作
3.对一个目录压缩并且打包
A.以gzip格式压缩打包
tar -czvf dir.tar.gz dir
B.以bzip2格式压缩打包
tar -cjvf dir.tar.bz2 dir
4.解包.tar.gz或.tar.bz2
A.解包dir.tar.gz
tar -zxvf dir.tar.gz
B.解包dir.tar.bz2
tar -jxvf dir.tar.bz2
二十二、显示系统进程
ps -ef
显示操作系统中的所有进程
用法:ps -ef | grep "进程名"
二十三、杀死系统进程
kill pid
杀死pid的进程
killall 进程名
杀死所有"进程名"的进程
二十四:改变文件权限(chmod)
u:文件所有者
g:文件所在组
o:其他用户
+:增加权限
-:除去权限
r:读
w:写
x:执行
1.给文件所有者增加权限
chmod u+r hello.c
给hello.c的文件所有者增加读权限
2.除去权限
chmod g-w hello.c
给hello.c所在组的用户除去写权限
3.chmod 777 hello.c
给所有用户读、写、执行权限
二十五、改变文件的所有者(chown)
chown root hello.c
将hello.c文件的所有者改为root
二十六、改变文件的所在组
chgrp root hello.c
将hello.c文件所在的组改为root