11.Linux shell编程(常用命令)

(创建于2018/1/31)

文件操作
1.显示列表

ls -l   以列表的形式显示
ls -la 以列表的形式显示所有,包括隐藏文件
ls -l ja* 通配符查找,查找的如果是文件夹结果是以列表形式显示文件夹下第一层的所有文件和文件夹
ls -l ja?  ?表示一个字符,查找ja后边只有一个字符的,显示的结果同上

ls -l 和 ls -la的区别,ls -la可以显示隐藏文件
11.Linux shell编程(常用命令)_第1张图片
611949796.png

s -l xx*通配符查找的是 满足条件的目录下的所有文件列表
11.Linux shell编程(常用命令)_第2张图片
612113484.png

2.创建文件
touch ren.txt 在当前目录创建ren.txt文件

3.复制文件

cp src.txt dest.txt  将src.txt文件复制到当前目录下,文件名为dest.txt
cp -i src.txt dest.txt  复制前询问是否复制,有一个确认的过程(我在linux云主机上尝试的没有提示,效果同上边的命令)
cp /xxx/xxx . 复制某一目录下某一文件到当前目录下,注意如果要复制本目录下到当前目录也就是本目录是不行的,会有提示
cp -R src dest  复制整个目录src到dest 目录下  (R有的地方区分大小写)

4.删除

rm -rf ndk/  
    
rm:删除命令
-r开关:递归地删除子目录和子目录中的文件
-f开关:强制删除,不再一一向用户提示确认
* 所有文件和文件夹

rm file  删除文件file
  1. echo "ren" 输出ren
    6.查看文件类型
file 文件名

7.查看文件内容

cat 文件名    功能跟vim差不多,不过cat打开只能读,不能编辑(more命令也可以查看)
cat -b 文件名  查看文件,显示行号

tail -n 10 文件名  查看文件最后十行
head -n 10 文件名  查看文件最前边十行

8.创建用户

useradd -m renzhenming  创建用户renzhenming,同时创建renzhenming用户的home目录
userdel -r renzhenming  删除用户

9.创建组

groupadd 组名

10.分配用户到组

usermod -G 组名 用户名

12.文件权限
704394750.png
如上截图

r:读
w:写
x:执行
d:目录

以上边user目录权限为例

d后边第一个三位表示文件所属用户具备的权限(rwx 具备读写执行的最高权限)
d后边第二个三位表示文件所属用户的所属组具备的权限(r-x具备读执行的权限)-表示0
d后边最后一个三位表示系统的其他用户具备的权限(r-x具备读执行的权限)

以往简单粗暴的赋权方式chmod 777 file不安全,我们需要根据需要设置root用户以及组和其他用户的权限
数字对应关系如下:

权限      二进制     八进制
---         000         0
--x         001         1
-w-         010         2
-wx         011         3
r--         100         4
r-x         101         5
rw-         110         6
rwx         111         7
    
rwx必须是固定顺序

修改文件权限
chmod 644 file
给用户加上执行权限
chmod u+x file  //(chmod是权限管理命令change the permissions mode of a file的缩写。。u代表所有者,x代表执行权限。 + 表示增加权限。chmod u+x file.sh 就表示对当前目录下的file.sh文件的所有者增加可执行权限)
tar命令的详细解释
参数:

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

--delete从存档中删除  注意是两个减号。

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

下面是例子
1.压缩一个目录
   eg:  tar -cvzf test.tar.gz  tar  #压缩当前目录下的tar目录,压缩包的名字叫test.tar.gz
2.压缩其中某一类型的文件
    eg:  tar -cvzf test.tar.gz  ./*.c #压缩当前目录下的.c为后缀的文件。但是不能压缩以.开头的文件
3.查看一个压缩文件的内容
   eg: tar -tvf test.tar.gz   #查看当前目录下test.tar.gz压缩文件中的文件
4.解压一个文件
    eg.  tar -xvzf test.tar.gz #解压test.tar.gz到当前目录下面
5.文件夹做一个归档文件、备份一个目录、
    eg: tar -cvf test.tar tar #将tar文件夹下的文件生成一个test.tar归档文件
6.将某一类型的文件做成归档文件、备份某一类型的文件
     eg:tar -cvf test.tar ./tar/*.c   # 将tar文件夹下所有以.c结尾的文件放到test.tar 文件中,但是以.开头的文件不行
7.向归档文件中添加一个文件夹
     eg: tar -rf test.tar  ./test1  #将test1文件夹中的所有文件,添加到test.tar 归档文件中
8.删除归档文件中的文件
     eg: tar -f test.tar --delete a.c  #删除test.tar文件中的 a.c文件
9.删除归档文件中的某一类的文件
     eg: tar -f test.tar --delete *.c  #删除test.tar文件中的 以.c结尾的文件
10.释放归档文件
    eg:  tar  -xvf  test.tar  #释放test.tar归档文件中的内容到 当前目录下
11.查看归档文件中的内容
    eg: tar -tvf test.tar 


总结
1、*.tar 用 tar –xvf 解压
2、*.gz 用 gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz 用 tar –xzf 解压
4、*.bz2 用 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar –xjf 解压
6、*.Z 用 uncompress 解压
7、*.tar.Z 用tar –xZf 解压
8、*.rar 用 unrar e解压
9、*.zip 用 unzip 解压

你可能感兴趣的:(11.Linux shell编程(常用命令))