目录

linux命令

1、cd命令

命令格式:cd

意义:cd是change directory 的缩写;cd命令后面跟一个路径,用于切换当前用户所在的路径,其中路径可以是绝对路径也可以是相对路径。

示例:

cd /system/bin 表示切换到/system/bin路径下。

cd logs 表示切换到logs路径下。

cd / 表示切换到根目录。

cd ../ 表示切换到上一层路径。

2、 ls命令

命令格式:ls

意义:ls是list的缩写;ls命令后面可以跟一个路径或参数,也可以不跟,表示列出路径或当前目录下的所有文件信息。最常用的的参数是“-l",也就是“ls -l”命令。

示例:

ls / 显示根目录下的所有文件及文件夹。

ls -l /data 显示/data路径下的所有文件及文件夹的详细信息。

ls -l 显示当前路径下的所有文件及文件夹的详细信息

ls *l wc显示当前目录下面的文件数量。

3、 cat命令

命令格式: cat

意义:cat是concatenate 的缩写。表示读取文件内容及拼接文件。

示例:

cat /sys/devices/system/cpu/online 读取 /sys/devices/system/cpu/路径下online文件内容。

cat test.txt 读取当前路径下test.txt文件内容。

4 、rm命令

命令格式: rm 或 rm -r

意义:rm是remove 的缩写。用于删除文件或文件夹,常用参数-r -f,-r表示删除目录,也可以用于删除文件,-f表示强制删除,不需要确认。同样的,删除文件前需保证当前用户对当前路径有修改的权限。

示例:

rm -rf path 删除path。

rm test.txt 删除test.txt。

5、 mkdir命令

命令格式: mkdir 文件夹

意义:mkdir是make directory 的缩写。用于创建文件夹。创建文件夹前需保证当前用户对当前路径有修改的权限。

示例:

mkdir /data/path 在/data路径下创建path文件夹。

mkdir -p a/b/c 参数 -p用于创建多级文件夹,这句命令表示在当前路径下创建文件夹a, 而a文件夹包含子文件夹b,b文件夹下又包含子文件夹c。

6、 touch命令

touch命令作用:创建空文件,或者改变文件的时间戳属性

如果创建一个新文件有很多种方法,比如:

vi file

cat > file

echo "hello,world" > file

touch  file

touch命令不仅可以创建新文件,而且可以改文件的时间属性;

语法:touch [options] filename

-a:改变访问时间

-m:改变改动时间

-t timestamp:改变访问时间和改动时间为timestamp

7、 chmod命令

chmod [options] mode files

只能文件属主或特权用户才能使用该功能来改变文件存取模式。mode可以是数字形式或以who opcode permission形式表示。who是可选的,默认是a(所有用户)。只能选择一个opcode(操作码)。可指定多个mode,以逗号分开。

语法

chmod [-cfvR] [--help] [--version] mode file...

参数说明

mode : 权限设定字串,格式如下 :

[ugoa...][[+-=][rwxX]...][,...]

其中:

u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。u用户 g组 o其它  a 所有用户(默认)

+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。

r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

-c : 若该文件权限确实已经更改,才显示其更改动作(-c,--changes只输出被改变文件的信息)

-f : 若该文件权限无法被更改也不要显示错误讯息(--silent,--quiet,当chmod不能改变文件模式时,不通知文件的用户)

-v : 显示权限变更的详细资料

-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)--recursive可递归遍历子目录,把修改应到目录下所有文件和子目录

--help : 显示辅助说明、输出帮助信息。

--version : 显示版本

--reference=filename参照filename的权限来设置权限

-v,--verbose无论修改是否成功,输出每个文件的信息

作为选择,我们多数用三位八进制数字的形式来表示权限,第一位指定属主的权限,第二位指定组权限,第三位指定其他用户的权限,每位通过4(读)、2(写)、1(执行)三种数值的和来确定权限。如6(4+2)代表有读写权,7(4+2+1)有读、写和执行的权限。

还可设置第四位,它位于三位权限序列的前面,第四位数字取值是4,2,1,代表意思如下:4,执行时设置用户ID,用于授权给基于文件属主的进程,而不是给创建此进程的用户。2,执行时设置用户组ID,用于授权给基于文件所在组的进程,而不是基于创建此进程的用户。1,设置粘着位。

8、cp命令

命令格式: cp 或者cp -r

意义:cp是copy 的缩写。用于复制文件或文件夹。

示例:

cp /data/logs /data/local/tmp/logs 复制/data路径下的logs到/data/local/tmp路径下。

cp 1.sh /sdcard/ 复制当前路径下的1.sh到/sdcard下。

9、 kill命令

命令格式:kill PID码

意义:结束当前进程

示例:

先通过输入命令 ps au查看进程,找到需要终止进程的PID再通过kill PID即可,如我这里想要终止的进程是vim test.py,查到的PID是3163,我们可以输入kill 3163结束这个程序,如果结束不了,可以通过kill -9 PID码强制结束,即kii -9 3163

10、 find命令

find命令:它通常用于文件的查找,find 命令工作方式如下:沿着文件层次结构向下遍历,匹配符合条件的文件,并执行相应操作。

Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

语法

find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \;

参数说明 :

find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。

expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。

-mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件

-amin n : 在过去 n 分钟内被读取过

-anewer file : 比文件 file 更晚被读取过的文件

-atime n : 在过去n天内被读取过的文件

-cmin n : 在过去 n 分钟内被修改过

-cnewer file :比文件 file 更新的文件

-ctime n : 在过去n天内被修改过的文件

-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name

-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写

-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写

-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。

-type c : 文件类型是 c 的文件。

d: 目录

c: 字型装置文件

b: 区块装置文件

p: 具名贮列

f: 一般文件

l: 符号连结

s: socket

-pid n : process id 是 n 的文件

你可以使用 ( ) 将运算式分隔,并使用下列运算。

exp1 -and exp2

! expr

-not expr

exp1 -or exp2

exp1, exp2

实例

将目前目录及其子目录下所有延伸档名是 c 的文件列出来。

# find . -name "*.c"

将目前目录其其下子目录中所有一般文件列出

# find . -type f

将目前目录及其子目录下所有最近 20 天内更新过的文件列出

# find . -ctime -20

查找/var/log目录中更改时间在7日以前的普通文件,并在删除之前询问它们:

# find /var/log -type f -mtime +7 -ok rm {} \;

查找前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件:

# find . -type f -perm 644 -exec ls -l {} \;

为了查找系统中所有文件长度为0的普通文件,并列出它们的完整路径:

# find / -type f -size 0 -exec ls -l {} \;

除了这10个命令,还有许多常见的命令,如pwd命令,这个可以查看当前路径,这个在移动数据集或者整理文件list的时候很有用;tar命令,这个可以文件压缩;unzip命令,这个可以用于文件解压,这样的命令其实还有很多,需要我们在使用的过程中不断熟练,需要我们不停的查阅学习。

docker命令

#docker命令

docker start xxx

docker stop xxx

#列出所有容器

docker container ls -a

docker ps -a

#进入容器

docker attach xxx

docker exec -it xxx /bin/bash

#删除容器

docker rm xxx

docker rm $(docker ps -aq)

#删除镜像

docker rmi xxx

#通过镜像创建一个新的容器并运行一个命令

docker run -v `pwd`:/data -e UID=1000 --privileged -i --rm -t xxxxxx  /bin/bash

标签:文件,路径,命令,linux,docker,权限,find

来源: https://blog.csdn.net/ph2444/article/details/112530637

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐