资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

linux递归命令,linux递归设置权限

Linux常用命令

1、ls命令

我们提供的服务有:网站设计、网站制作、微信公众号开发、网站优化、网站认证、双鸭山ssl等。为超过千家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的双鸭山网站制作公司

ls是list的缩写,常用命令为ls(显示出当前目录列表),ls -l(详细显示当前目录列表),ls -lh(人性化的详细显示当前目录列表),ls -a(显示出当前目录列表,包含隐藏文件)

2、cd 命令

cd是change direcory的缩写,常用命令为 cd 目录,cd ..为返回上级目录,cd - 返回上次所在目录

3、pwd命令

常用命令为pwd 显示当前所在目录

4、mkdir命令

mkdir命令为创建空目录命令,通常用法为mkdir 目录名,mkdir -p 目录名/目录名 可以递归创建多个不存在的目录

5、rm命令

rm为删除命令remove,rm 文件,谨慎操作

6、rmdir命令

rm为删除命令remove direcory,rm 目录,谨慎操作

7、mv命令

mv命令move,移动剪切命令,mv 文件 目录,mv 文件 文件(会覆盖)

8、cp命令

cp命令为copy命令,复制文件或目录到别的目录里面,cp 文件/目录 目录/文件

9、touch命令

touch命令创建空文件,比如touch xx.txt,touch 目录 文件

10、cat命令

cat命令查看当前文件内容,cat fi.txt f2.txt f3.txt合并文件内容,cat -n 对所有行进行编号

11、nl命令

nl命令 为文件加入显示行号,nl 文件名,nl -b a 文件名,将空行也加如行号

12、more 命令

more命令 按页显示文件内容,more 文件名,more -2 文件名 每2行显示一页

13、less命令

less命令查看文件内容,可以上下翻页,less 文件名

14、head命令

head命令可以查看文件前几行内容,head -n 2 文件名

15、tail命令

tail命令可以查看文件后几行内容,tail -n 2 文件名

16、which命令

which 可以执行文件名称,显示路径

17、whereis命令

whereis -m svn 查出说明文档路径,whereis -s svn 找source源文件。

18、locate命令

locate /etc/m 搜索ect目录下所有m开头的文件

19、find 命令

find . -name "*.log"根据关键字查找

20、find exec命令

ls -l命令放在find命令的-exec选项中 find . -type f -exec ls -l {} ;

21、find xargs命令

find . -type f -print | xargs file查找系统中的每一个普通文件,然后使用xargs命令来测试它们分别属于哪类文件

22、ls -lih命令

详细的文件属性

23、zmodem

Linux基本命令-2021-0717

[root@localhost ~]# ls -l

总用量 44

-rw------. 1 ---- root ---- root --------1207 1 月14 18:18 anaconda-ks.cfg

权限--引用计数 所有者 -- 所属组--- 大小-- 文件修改时间 文件名

ls [选项] [文件名或目录名]

选项:

-a :显示所有文件

--color=when:支持颜色输出

-d :显示目录信息,而不是目录下的文件

-h :人性化显示﹐按照我们习惯的显示文件大小

-i :显示文件的i节点号

-l:长格式显示

pwd 命令是查询当前所在的目录的绝对路径

选项:

-L (默认值)打印环境变量"$PWD"的值,可能为符号链接。

-P 打印当前工作目录的物理位置。

mkdir 是创建目录的命令

选项:

-Z:设置安全上下文,当使用SELinux时有效;

-m或--mode:建立目录的同时设置目录的权限;

-p或--parents:若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

rmdir 是删除空目录的命令

-p: 递归删除目录

touch 是 创建空文件或修改文件的时间戳

[root@localhost ~]# touch [选项] 文件名

-a:或--time=atime或--time=access或--time=use 只更改存取时间;

-c:或--no-create 不建立任何文件;

-d:时间日期 使用指定的日期时间,而非现在的时间;

-f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;

-m:或--time=mtime或--time=modify 只更该变动时间;

-r:参考文件或目录 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;

-t:日期时间 使用指定的日期时间,而非现在的时间;

--help:在线帮助;

--version:显示版本信息。

stat 是查看文件详细信息的命令,而且可以看到文件的这三个时间戳

选项:

-L:支持符号连接;

-f:显示文件系统状态而非文件状态;

-t:以简洁方式输出信息;

cat 命令用来查看文件内容

选项:

-A: 相当于-vET 选项的整合,用于列出所有隐藏符号

-E: 列出每行结尾的回车符$

-n: 显示行号

-T: 把 Tab 键用^I显示出来

-v: 列出特殊字符

more 是分屏显示文件的命令

less 是分行显示文件的命令

用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。

选项:

-e:文件内容显示完毕后,自动退出;

-f:强制显示文件;

-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;

-l:搜索时忽略大小写的差异;

-N:每一行行首显示行号;

-s:将连续多个空行压缩成一行显示;

-S:在单行显示较长的内容,而不换行显示;

-x数字:将TAB字符显示为指定个数的空格字符。

head 是用来显示文件开头的命令

选项:

-c --bytes=[-]NUM 显示前NUM字节;如果NUM前有"-",那么会打印除了文件末尾的NUM字节以外的其他内容。

-n, --lines=[-]NUM 显示前NUM行而不是默认的10行;如果NUM前有"-",那么会打印除了文件末尾的NUM行以外的其他行。

-q, --quiet, --silent 不打印文件名行。

-v, --verbose 总是打印文件名行。

-z, --zero-terminated 行终止符为NUL而不是换行符。

tail 是用来显示文件末尾的命令

选项:

-c, --bytes=NUM 输出文件尾部的NUM(NUM为整数)个字节内容。

-f, --follow[={name|descript}] 显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。

-F 与 “--follow=name --retry” 功能相同。

-n, --line=NUM 输出文件的尾部NUM(NUM位数字)行内容。

--pid=进程号 与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令。

-q, --quiet, --silent 当有多个文件参数时,不输出各个文件名。

--retry 即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“--follow=name”连用。

-s, --sleep-interal=秒数 与“-f”选项连用,指定监视文件变化时间隔的秒数。

-v, --verbose 当有多个文件参数时,总是输出各个文件名。

ln 是用来为文件创建链接的命令

[root@localhost ~]# ln [选项] 源文件 目标文件

选项:

-s: 建立软链接文件。如果不加“-s”选项,则建立硬链接文件

-f: 强制。如果目标文件已经存在,则删除目标文件后再建立链接文件

-d, -F, --directory 创建指向目录的硬链接(只适用于超级用户)

-f, --force 强行删除任何已存在的目标文件

-i, --interactive 覆盖既有文件之前先询问用户

-L, --logical 取消引用作为软链接的目标

-n, --no-dereference 把软链接的目的目录视为一般文件

-P, --physical 直接将硬链接到软链接

-r, --relative 创建相对于链接位置的软链接

-s, --symbolic 对源文件建立软链接

硬链接特征:

源文件和硬链接文件拥有相同的 Inode 和 Block

 修改任意一个文件,另一个都改变

 删除任意一个文件,另一个都能使用

 硬链接标记不清,很难确认硬链接文件位置,不建议使用

 硬链接不能链接目录

 硬链接不能跨分区

软链接特征:

 软链接和源文件拥有不同的 Inode 和 Block

 两个文件修改任意一个,另一个都改变

 删除软链接,源文件不受影响;删除源文件,软链接不能使用

 软链接没有实际数据,只保存源文件的 Inode,不论源文件多大,软链接大小不变

 软链接的权限是最大权限 lrwxrwxrwx.,但是由于没有实际数据,最终访问时需要参考源文

件权限

 软链接可以链接目录

 软链接可以跨分区

 软链接特征明显,建议使用软连接

rm 是强大的删除命令,不仅可以删除文件,也可以删除目录

[root@localhost ~]# rm [选项] 文件或目录

选项:

d:直接把欲删除的目录的硬连接数据删除成0,删除该目录;

-f:强制删除文件或目录;

-i:删除已有文件或目录之前先询问用户;

-r:递归处理,将指定目录下的所有文件与子目录一并处理;

--preserve-root:不对根目录进行递归操作;

-v:显示指令的详细执行过程。

cp 是文件或目录用于复制的命令

[root@localhost ~]# cp [选项] 源文件 目标文件

选项:

-a:此参数的效果和同时指定"-dpR"参数相同;

-d:当复制软链接时,把目标文件或目录也建立为软链接,并指向与源文件或目录连接的原始文件或目录;

-f:强行复制文件或目录,不论目标文件或目录是否已存在;

-i:覆盖既有文件之前先询问用户;

-l:对源文件建立硬连接,而非复制文件;

-p:保留源文件或目录的属性;

-r:递归处理,将指定目录下的所有文件与子目录一并处理;

-s:对源文件建立软链接,而非复制文件;

-u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;

-S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;

-b:覆盖已存在的文件目标前将目标文件备份;

-v:详细显示命令执行的操作。

mv 是用来对文件或目录重新命名,或者将文件移动至其他目录

[root@localhost ~]# mv [选项] 源文件 目标文件

选项:

-b:当文件存在时,覆盖前,为其创建一个备份;

-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;

-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。

--strip-trailing-slashes:删除源文件中的斜杠“ / ”;

-S后缀:为备份文件指定后缀,而不使用默认的后缀;

--target-directory=目录:指定源文件要移动到目标目录;

-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

[root@localhost ~]# ls -l install.log

-rw-r--r--. 1 root root 24772 1 月 14 18:17 install.log

第一列的权限位如果不计算最后的“.”,则共有 10 位。

第 2~4 位代表文件所有者的权限。

chmod 用来变更文件或目录的权限

[root@localhost ~]# chmod [选项] 权限模式 文件名

选项:

-c, --changes:当文件的权限更改时输出操作信息。

--no-preserve-root:不将'/'特殊化处理,默认选项。

--preserve-root:不能在根目录下递归操作。

-f, --silent, --quiet:抑制多数错误消息的输出。

-v, --verbose:无论文件是否更改了权限,一律输出操作信息。

--reference=RFILE:使用参考文件或参考目录RFILE的权限来设置目标文件或目录的权限。

-R, --recursive:对目录以及目录下的文件递归执行更改权限操作。

用户身份

首先,读、写、执行权限对文件和目录的作用是不同的。

目录的可用权限其实只有以下几个。

chown 是修改文件和目录的所有者和所属组的命令

[root@localhost ~]# chown [选项] 所有者:所属组 文件或目录

选项:

-c或——changes:效果类似“-v”参数,但仅回报更改的部分;

-f或--quite或——silent:不显示错误信息;

-h或--no-dereference:只对软链接的文件作修改,而不更改其他任何相关文件;

-R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;

-v或——version:显示指令执行过程;

--reference=参考文件或目录:把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同;

普通用户不能修改文件的所有者,哪怕自己是这个文件的所有者也不行

普通用户可以修改所有者是自己的文件的权限

chgrp 是修改文件和目录的所属组的命令

[root@phato ~]# chgrp [选项] 所属组 文件或目录

-R 递归式地改变指定目录及其下的所有子目录和文件的所属的组

-c或——changes:效果类似“-v”参数,但仅回报更改的部分;

-f或--quiet或——silent:不显示错误信息;

-h或--no-dereference:只对符号连接的文件作修改,而不是该其他任何相关文件;

-H如果命令行参数是一个通到目录的软链接,则遍历软链接

-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;

-L:遍历每一个遇到的通到目录的软链接

-P:不遍历任何符号链接(默认)

-v或——verbose:显示指令执行过程;

--reference=参考文件或目录:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同;

umask 是显示或设置创建文件的权限掩码。我们需要先了解一下新建文件和目录的默认最大权限。

我们在这里按照权限字母来讲解 umask 权限的计算方法。我们就按照默认的 umask 值是 022来分别计算一下新建文件和目录的默认权限吧。

linux常用命令有哪些?

01

linux常用命令有pwd命令、cd命令、ls命令、cat命令、grep命令、touch命令、cp命令、mv命令、rm命令、rmdir命令等。

linux常用命令:

1、 pwd命令

该命令的英文解释为print working directory(打印工作目录)。输入pwd命令,Linux会输出当前目录。

2、 cd命令

cd命令用来改变所在目录。

cd / 转到根目录中

cd ~ 转到/home/user用户目录下

cd /usr 转到根目录下的usr目录中-------------绝对路径

cd test 转到当前目录下的test子目录中-------相对路径

3、 ls命令

ls命令用来查看目录的内容。 选项 含义 -a 列举目录中的全部文件,包括隐藏文件 -l 列举目录中的细节,包括权限、所有者、组群、大小、创建日期、文件是否是链接等 -f 列举的文件显示文件类型 -r 逆向,从后向前地列举目录中内容 -R 递归,该选项递归地列举当前目录下所有子目录内的内容 -s 大小,按文件大小排序 -h 以人类可读的方式显示文件的大小,如用K、M、G作单位 ls -l examples.doc 列举文件examples.doc的所有信息

4、 cat命令

cat命令可以用来合并文件,也可以用来在屏幕上显示整个文件的内容。

cat snow.txt 该命令显示文件snow.txt的内容,ctrl+D退出cat。

5、 grep命令

grep命令的最大功能是在一堆文件中查找一个特定的字符串。

grep money test.txt

以上命令在test.txt中查找money这个字符串,grep查找是区分大小写的。

6 、touch命令

touch命令用来创建新文件,他可以创建一个空白的文件,可以在其中添加文本和数据。

touch newfile 该命令创建一个名为newfile的空白文件。

7 、cp命令

cp命令用来拷贝文件,要复制文件,输入命令:

cp

cp t.txt Document/t 该命令将把文件t.txt复制到Document目录下,并命名为t。 选项 含义 -i 互动:如果文件将覆盖目标中的文件,他会提示确认 -r 递归:这个选项会复制整个目录树、子目录以及其他 -v 详细:显示文件的复制进度

8 、mv命令

mv命令用来移动文件。 选项 说明 -i 互动:如果选择的文件会覆盖目标中的文件,他会提示确认 -f 强制:它会超越互动模式,不提示地移动文件,属于很危险的选项 -v 详细:显示文件的移动进度

mv t.txt Document 把文件t.txt 移动到目录Document中。

9 、rm命令

rm命令用来删除文件。 选项 说明 -i 互动:提示确认删除 -f 强制:代替互动模式,不提示确认删除 -v 详细:显示文件的删除进度 -r 递归:将删除某个目录以及其中所有的文件和子目录

rm t.txt 该命令删除文件t.txt

10、 rmdir命令

rmdir命令用来删除目录。

Linux里面递归创建目录指令是什么?

mkdir 默认只能在已经存在的目录中建立新目录,我们在建立目录的时候使用的是相对路径,所以这个目录被建立到当前目录下。 建立一系列的新目录,则需要加入"-p"选项,递归建立才可以。

【例】使用 -p 选项递归建立目录。

[root@localhost ~]# mkdir lm/movie/jp/cangls

mkdir:无法创建目录"lm/movie/jp/cangls":没有那个文件或目录

[root@localhost ~]# mkdir -p lm/movie/jp/cangls

[root@localhost ~]# ls

anaconda-ks.cfg cangls install.log install.log.syslog lm

[root@localhost ~]# ls lm/

movie

#这里只查看一级子目录,其实后续的jp目录、cangls目录都已经建立

Linux命令

命令格式: 命令 [-选项] [参数]

如:ls -la /usr

**说明: **

大部分命令遵从该格式

多个选项时,可以一起写 eg:ls –l –a à ls –la

简化选项与完整选项(注:并非所有选项都可使用完整选项) eg:ls –all à ls –a

作用:切换用户身份

语法:su [选项] 用户名

-c 仅执行一次命令,而不切换用户身份

$ su – root

env

$ su – root –c “useradd longjing”

文件或目录的CRUD

英文:change directory 命令路径:内部命令 执行权限:所有用户

作用: 切换目录

语法:cd [目录] / 切换到根目录

.. 回到上一级目录

. 当前目录

~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)

英文:list 命令路径:/bin/ls 执行权限:所有用户

作用:显示目录文件

语法:ls [-alrRd] [文件或目录]

-a all 显示所有文件,注意隐藏文件,特殊目录.和..

-l(long) 显示详细信息

-R(recursive) 递归显示当前目录下所有目录

-r (reverse) 逆序排序

-t(time) 按修改时间排序(降序)

英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户

作用:显示当前工作目录

语法:pwd [-LP]

-L 显示链接路径,当前路径,默认

-P 物理路径

eg:# cd /etc/init.d

英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户

作用:创建新目录

语法:mkdir [-p] 目录名

-p 父目录不存在情况下先生成父目录 (parents)

eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录。

命令路径:/bin/touch 执行权限:所有用户

作用:创建空文件或更新已存在文件的时间

语法:touch 文件名

eg:touch a.txt b.txt touch {a.txt,b.txt} 同时创建多个文件

创建带空格的文件 eg:touch "program files" 在查询和删除时也必须带双引号

注意:生产环境中,文件名,一定不要加空格

英文:copy 命令路径:/bin/cp 执行权限:所有用户

作用:复制文件或目录

语法:cp [–rp] 源文件或目录 目的目录

-r -R recursive 递归处理,复制目录

-p 保留文件属性 (原文件的时间不变)

eg:

1,相对路径 cp –R /etc/* . cp –R ../aaa ../../test/

2,,绝对路径 cp –R / ect/service /root/test/aa/bb

英文:move 命令路径:/bin/mv 执行权限:所有用户

作用:移动文件或目录、文件或目录改名

语法:mv 源文件或目录 目的目录

英文:remove 命令路径:/bin/rm 执行权限:所有用户

作用:删除文件

语法: rm [-rf] 文件或目录

-r (recursive)删除目录,同时删除该目录下的所有文件

-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认

注意:工作中,谨慎使用rm –rf 命令。

扩展点 :删除乱码文件

一些文件乱码后使用rm -rf 依然无法删除

此时,使用ll -i 查找到文件的inode节点

然后使用find . -inum 查找到的inode编号 -exec rm {} -rf ;

就能顺利删除了

英文:concatenate 命令路径:/bin/cat 执行权限:所有用户

作用:显示文件内容

语法:cat [-n] [文件名]

-n 显示行号

eg:cat /etc/services

命令路径:/bin/more 执行权限:所有用户

作用:分页显示文件内容

语法:more [文件名]

空格或f 显示下一页

Enter键 显示下一行

q或Q 退出

命令路径:/usr/bin/head 执行权限:所有用户

作用:查看文件前几行(默认10行)

语法:head [文件名]

-n 指定行数

eg:head -20 /etc/services head –n 3 /etc/services

命令路径:/usr/bin/tail 执行权限:所有用户

作用:查看文件的后几行

语法:tail [文件名]

-n 指定行数

-f (follow) 动态显示文件内容

获取一个大文件的部分文件,可使用head或tail命令

head -n 100 /etc/services config.log

英文: link 命令路径:/bin/ln 执行权限:所有用户

作用:产生链接文件

语法:

ln -s [源文件] [目标文件] 创建软链接 源文件 使用 绝对路径

ln [源文件] [目标文件] 创建硬链接

eg:ln -s /etc/service ./service.soft

创建文件/etc/service的软链接service.soft

eg:/etc/service /service.hard

创建文件/etc/service的硬链接/service.hard

软连接类似于windows下的快捷方式

软连接文件格式:

lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service - /etc/services

1 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。

13链接文件的长度

格式解析(特征):

1, 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx

2,- 箭头指向到源文件

真正的权限取决于对源文件的权限

时间值为创建软连接的时间

软连接可以跨文件系统生成

硬链接特征

1,相当于 cp -p +同步更新

2,通过i节点识别,与源文件有相同的inode节点

3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)

4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)

删除软连接

rm -rf symbolic_name

英文:manual 命令路径:/usr/bin/man 执行权限:所有用户

作用:获取命令或配置文件的帮助信息

语法:man [命令/配置文件]

eg:man ls man services

(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)

调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。

使用/加上关键的参数可直接定位搜索, n 查找下一个,shift+n 查找上一个

eg: /-l 直接查看-l的介绍

扩展:man的级别 (帮助文档的类型, 了解1 5即可)

man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)

1是命令,5是配置文件 man优先显示命令,可指定帮助类型

eg:man 5 passwd (5代表配置文件级别)

[图片上传失败...(image-6718d2-1624438708895)]

help 查看shell内置命令的帮助信息

eg:help cd

内置命令,使用whereis,which,man都不能查看

type 命令 查看内部命令还是外部命令

命令名 --help 列举该命令的常用选项

eg: cp --help

命令路径:/bin/find 执行权限:所有用户

作用:查找文件或目录

语法:find [搜索路径] [匹配条件]

如果没有指定搜索路径,默认从当前目录查找

find命令选项

-name 按名称查找 精准查找

eg:find /etc -name “init” 在目录/etc中查找文件init

-iname 按名称查找

find查找中的字符匹配:

*:匹配所有

?:匹配单个字符

eg:find /etc -name “init???” 在目录/etc中查找以init开头的,且后面有三位的文件

模糊匹配的条件,建议使用单引号或双引号括起来。如果*被转义,可使用 单双引号括住查询条件,或者使用*。

eg: # find . –name *g

-size ****按文件大小查找

以block为单位,一个block是512B, 1K=2block +大于 -小于 不写是等于

eg:find /etc -size -204800 在etc目录下找出大于100MB的文件

100MB=102400KB=204800block

**-type ** 按文件类型查找

f 二进制文件l 软连接文件 d 目录 c 字符文件

eg: find /dev -type c

find****查找的基本原则 :

占用最少的系统资源,即查询范围最小,查询条件最精准

eg:

如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/

命令路径:/bin/grep 执行权限:所有用户

作用:在文件中搜寻字串匹配的行并输出

语法:grep [-cinv] '搜寻字符串' filename

选项与参数:

-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)

-i :忽略大小写,所以大小写视为相同

-n :显示匹配行及行号

-v :反向选择,显示不包含匹配文本的所有行。

eg:grep ftp /etc/services

eg:#grep -v ^# /etc/inittab 去掉文件行首的#号

eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号

eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次

命令路径:/usr/bin/which 执行权限:所有用户

作用: 显示系统命令所在目录(绝对路径及别名)

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

alias ls='ls --color=auto'

/bin/ls

/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)

命令路径:/usr/bin/whereis 执行权限:所有用户

作用:**搜索命令所在目录 配置文件所在目录 及帮助文档路径 **

eg: which passwd 和 whereis passwd

eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd

英文:GNU zip 命令路径:/bin/gzip 执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.gz

gzip只能压缩文件,不能压缩目录;不保留原文件

语法:gzip 文件

-d将压缩文件解压(decompress)

解压使用gzip –d或者 gunzip

命令路径:/usr/bin/bzip2 执行权限:所有用户

作用: 压缩(解压)文件,压缩文件后缀为.bz2

语法:bzip2 [-k] [文件]

-k:产生压缩文件后保留原文件(压缩比高)

-d 解压缩的参数(decompress)

解压使用bzip2 –d或者 bunzip2

命令路径:/usr/bin/zip 执行权限:所有用户

作用: 压缩(解压)文件,压缩文件后缀为.zip

语法:zip 选项[-r] [压缩后文件名称] [文件或目录]

-r压缩目录

eg:zip services.zip /etc/services 压缩文件;

zip -r test.zip /test 压缩目录

如果不加-r选项,压缩后的文件没有数据。

解压使用unzip

命令路径:/bin/tar 执行权限:所有用户

作用:文件、目录打(解)包

语法:tar [-zcf] 压缩后文件名 文件或目录

-c 建立一个压缩文件的参数指令(create),后缀是.tar

-x 解开一个压缩文件的参数指令(extract)

-z 以gzip命令压缩/解压缩

-j 以bzip2命令压缩/解压缩

-v 压缩的过程中显示文件(verbose)

-f file 指定文件名,必选项

1, 单独的打包 ,解包 tar –cf tar –xf

2, 打包之后,进行压缩 gzip bzip2

3, 一步到位 tar –zcvf tar -zxvf

tar -cf -xf 单独 压缩 解压缩

tar -z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)

tar -j 以bzip2打包目录并压缩 文件格式.tar.bz2

eg:tar -zcvf dir1.tar.gzdir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz

eg: tar -cvf bak.tar . 将当前目录的文件打包为bak.tar

eg: tar -xvf bak.tar 解压

eg: tar -zcvf bak.tar.gz bak.tar 或 gzip bak.tar使用gzip将打包文件bak.tar压缩为bak.tar.gz

eg: tar -jcvf bak.tar.bz2 bak.tar 或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2

eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中(r)

eg:tar -cjvf test.tar.bz2 test 生成test.tar.bz2的压缩文件

eg:tar -xjf test.tar.bz2 解压

最常用: tar + gzip

tar –zcvf 压缩

tar –zxvf 解压

补充:

1,文件路径, 压缩包带文件路径

2,源文件是保留的,不会被删除

**shutdown **[选项] 时间

选项: -c: 取消前一个关机命令

-h:关机

-r:重启

eg:

shutdown -h now 立即关机 shutdown -h 20:30 定时关机

其他关机命令 halt poweroff init 0

其他重启命令

**reboot **重启系统 reboot -h now立即重启

init 6

注意:生产环境中,关机命令和重启命令谨慎执行。

善于查看man help等帮助文档

利用好Tab键 自动补全

掌握好一些快捷键

ctrl + c(停止当前进程)

ctrl + z 挂起当前进程,放后台

ctrl + r(查看命令历史) history

ctrl + l(清屏,与clear命令作用相同)

方向箭头 上 下 可以查看执行过的命令

ctrl + a 行首 ctrl + e 行尾

ctrl + k 清除 ctrl+ w 清除单词

vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

只有命令,没有菜单。

《大碗》编辑器版

周围的同事不是用VI就是Emacs,你要是用UltraEdit都不好意思跟人家打招呼...什么插件呀、语法高亮呀、拼写检查呀,能给它开的都给它开着,就是一个字:酷!你说这么牛X的一东西,怎么着学会也得小半年吧。半年!?入门都远着呢!能学会移动光标就不错了,你还别说耗不起,就这还是左右移动!!!

:

[图片上传失败...(image-a08366-1624438708894)]

命令模式:又称一般模式

编辑模式:又称底行模式,命令行模式

|

命令

|

作用

|

|

a

|

在光标后附加文本

|

|

A(shift + a)

|

在本行行末附加文本 行尾

|

|

i

|

在光标前插入文本

|

|

I(shift+i)

|

在本行开始插入文本 行首

|

|

o

|

在光标下插入新行

|

|

O(shift+o)

|

在光标上插入新行

|

|

命令

|

作用

|

|

:set nu

|

设置行号

|

|

:set nonu

|

取消行号

|

|

gg

G

|

到第一行

到最后一行

|

|

nG

|

到第n行

|

|

:n

|

到第n行

|

|

命令

|

作用

|

|

:w

|

保存修改

|

|

:w new_filename

|

另存为指定文件

|

|

:w a.txt

|

内容追加到a.txt文件中 文件需存在

|

|

:wq

|

保存修改并退出

|

|

shift+zz(ZZ)

|

快捷键,保存修改并退出

|

|

:q!

|

不保存修改退出

|

|

:wq!

|

保存修改并退出(文件所有者可忽略文件的只读属性)

|

不保存并退出:

1, 有修改,但是修改后的内容是不保存的

2, 有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

|

命令

|

作用

|

|

x

|

删除光标所在处字符 nx 删除光标所在处后n个字符

|

|

dd

|

删除光标所在行,ndd删除n行

|

|

:n1,n2d

|

删除指定范围的行(eg :1,3d 删除了123这三行)

|

|

dG

|

删除光标所在行到末尾的内容

|

|

D

|

删除从光标所在处到行尾

|

|

命令

|

作用

|

|

yy、Y

|

复制当前行

|

|

nyy、nY

|

复制当前行以下n行

|

|

dd

|

剪切当前行

|

|

ndd

|

剪切当前行以下n行

|

|

p、P

|

粘贴在当前光标所在行下 或行上

|

|

命令

|

作用

|

|

r

|

取代光标所在处字符

|

|

R(shift + r)

|

从光标所在处开始替换字符,按Esc结束

|

|

u

|

undo,取消上一步操作

|

|

ctrl+r

|

redo,返回到undo之前

|

|

命令

|

作用

|

|

/string

|

向后搜索指定字符串 搜索时忽略大小写 :set ic

|

|

?string

|

向前搜索指定字符串

|

|

n

|

搜索字符串的下一个出现位置,与搜索顺序相同

|

|

N(Shift + n)

|

搜索字符串的上一个出现位置,与搜索顺序相反

|

|

:%s/old/new/g

|

全文替换指定字符串

|

|

:n1,n2s/old/new/g

|

在一定范围内替换指定字符串

|

% 指全文,s 指开始,g 指全局替换

eg: :41,44/yang/lee/c 从41行到44行,把yang替换为lee,询问是否替换

eg: :41,44/yang/lee/g 同上,不询问,直接替换

使用替换命令来添加删除注释

:% s/^/#/g 来在全部内容的行首添加 # 号注释

:1,10 s/^/#/g 在1~10 行首添加 # 号注释

vi里面怎么查命令??

:!which cp

vi里面怎么导入命令的结果?

:r !which cp

v 可视字符模式

V****(shift+v) 可视行模式,选择多行操作

**ctrl+v **可视块模式(列模式),操作列

I或者O进入插入模式。

1,图形化界面

2,setup 命令虚拟界面

3,修改配置文件(以网络方式为NAT示例)

vi /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.2.129

NETMASK=255.255.255.0

GATEWAY=192.168.2. 2 #网段2任意,IP地址2固定,网段为vmnet8的设置的IP网段

DNS1=114.114.114.114

DNS2=8.8.8.8

重启网络生效:

service network restart

命令路径:/bin/ping 执行权限:所有用户

作用:测试网络的连通性

语法:ping 选项 IP地址

-c 指定发送次数

ping 命令使用的是icmp协议,不占用端口

eg: # ping -c 3 127.0.0.1

英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root

作用:查看和设置网卡网络配置

语法:ifconfig [-a] [网卡设备标识]

-a:显示所有网卡信息

ifconfig [网卡设备标识] IP地址 修改ip地址

英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户

作用:主要用于检测主机的网络配置和状况

-a all显示所有连接和监听端口

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 使用数字方式显示地址和端口号

-l (listening) 显示监控中的服务器的socket

eg:# netstat -tlnu 查看本机监听的端口

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN

协议 待收数据包 待发送数据包 本地ip地址:端口 远程IP地址:端口

netstat –antpl

临时生效:

hostname 主机名

[图片上传失败...(image-ceed36-1624438708893)]

永久生效:修改配置文件

vi /etc/sysconfig/network

[图片上传失败...(image-2b9d9e-1624438708893)]

修改主机名和ip地址之间的映射关系

vi /etc/hosts

192.168.2.120 node-1.edu.cn node-1

可配置别名

[图片上传失败...(image-ec86cf-1624438708893)]

进程和程序的区别:

1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的。

2、程序和进程无一一对应关系。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序。

进程和线程的区别:

进程: 就是正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲,线程耗费的cpu和内存要小于进程。

进程管理的作用?

判断服务器的健康状态

查看系统所有的进程

杀死进程

作用:查看系统中的进程信息

语法:ps [-auxle]

常用选项

查看系统中所有进程

ps应用实例 # ps -u or ps -l 查看隶属于自己进程详细信息

作用: 查看当前进程树

语法:pstree [选项]

-p 显示进程PID

-u 显示进程的所属用户

作用:查看系统健康状态

显示当前系统中耗费资源最多的进程,以及系统的一些负载情况。

语法:top [选项]

-d 秒数,指定几秒刷新一次,默认3秒(动态显示)

作用:关闭进程

语法:kill [-选项] pId

kill -9 进程号(强行关闭) 常用

kill -1 进程号(重启进程)

添加用户

语法:useradd [选项] 用户名

修改密码命令

语法:passwd [选项] [用户名]

用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符,要定期更换密码。

ys^h_L9t

删除用户

-r 删除账号时同时删除宿主目录(remove)

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间

语法:df [-hkam] [挂载点]

-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k  以KB 为单位显示各分区的信息,默认

-M 以MB为单位显示信息 -a  显示所有分区包括大小为0 的分区

作用:用于查看文件或目录的大小(磁盘使用空间)

语法:du [-abhs] [文件名目录]

-a 显示子文件的大小

-h以易读的方式显示 KB,MB,GB等

-s summarize 统计总占有量

eg:

du -a(all) /home  显示/home 目录下每个子文件的大小,默认单位为kb

du -b /home  以bytes为单位显示/home 目录下各个子目录的大小

du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小

du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

df命令和du命令的区别:

df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。

du命令面向文件,只计算文件或目录占用的空间。

作用:查看内存及交换空间使用状态

语法: free [-kmg]

选项:

-k: 以KB为单位显示,默认就是以KB为单位显示

-m: 以MB为单位显示

-g: 以GB为单位显示

清理缓存命令:

echo 1 /proc/sys/vm/drop_caches

linux命令cp命令(复制文件,递归复制目录)

cp a.txt b.txt 复制文件

cp -a a.txt b.txt 复制文件的时候,同时复制原文件的属性,这样得到的文件会一模一样,比如拥有相同的组,拥有者和执行权限

cp -r ./test ./test1 递归复制文件夹,会将test下的所有文件都复制,但是需要注意的是目标必须是一个目录,不能是文件名


文章题目:linux递归命令,linux递归设置权限
文章链接:http://cdkjz.cn/article/hcjpch.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220