Linux基础——常用命令(第二篇)

《Linux基础——常用命令(第一篇)》本文将继续大家分享常用的Linux命令,希望可以帮助到大家。

9. 服务器信息收集

lsb_release -a :prints certain linux standard base and distribution information
uname –a :print system information
hostname :show or set the system's host name
cat /proc/cpuinfo
cat /proc/meminfo
cat /proc/swaps
free –g :display amount of free and used memory in the system
df –hT :report file system disk space usage
ifconfig :configure a network interface

10. 其他命令

—ssh命令
  功能:远程登陆到其他UNIX主机
  ssh -l user1 192.168.1.2 使用用户名user1登陆到192.168.1.2
  ssh user1@192.168.1.2 使用用户名user1登陆到192.168.1.2

—scp命令
  功能:安全copy
  例如:
  scp abc.tar.gz user1@192.168.1.5:~ 将本地的abc.tar.gz 复制到 192.168.1.5的user1用户的根(/home/user1)下。

—telnet命令
  功能:登陆到远程主机
  例如:
telnet 192.168.1.5

—rpm操作
功能:软件管理包工具
例如:
rpm -qa 查询已经安装了哪些软件包
rpm -qip 获取一个没有安装过的软件包的版本、用途等相关信息
rpm -ivh 安装软件包并在安装过程中显示正在安装的文件信息及安装进度
rpm -evh 卸载安装包并在卸载过程中显示卸载的文件信息及卸载进度
rpm -Uvh 升级软件包并在升级过程中显示升级的文件信息及升级进度






pwd介绍


 


pwd是 print working directory的缩写,意思为“打印工作目录”,pwd可以显示当前的工作目录的路径。该命令非常简单,也很常用,当在终端中切换目录时,pwd命令可以帮助确定所在的位置。以下是对 pwd 命令的详细介绍:

 

pwd用法

 

基本语法如下:

pwd [选项]

 

选项参数

1. -P(显示物理路径):当遇到符号链接(Symbolic Link)的情况。符号链接是一种特殊的文件类型,它指向另一个文件或目录。如果我们想要显示符号链接指向的实际路径,而不是链接本身的路径,可以使用 -P 选项(Physical,物理,显示物理路径,即实际的路径)。

 

2. -L(显示逻辑路径): -P 选项相反,-L 选项用于显示符号链接本身的路径(Logic,逻辑路径),而不是指向的实际路径。此时我们输入 pwd -L,就会显示逻辑路径了,效果和直接输入 pwd 一致。

 

pwd 命令主要有以下功能:


  • 输出当前工作目录的完整路径。当前工作目录是指在你执行命令时你所处的目录。
  • 方便地确定你当前所在的位置,以便了解当前工作目录的路径。


 

示例

打印当前工作目录路径:

 

 

注意事项


  • pwd 命令会直接打印出当前工作目录的路径,不会进行搜索或过滤。
  • 要注意的是,pwd 命令输出的路径只是当前工作目录的路径,不一定表示系统中的实际路径。它是相对于当前工作目录的路径。
  • pwd 命令不接受任何参数,只需直接输入 pwd 即可执行。


 

对于日常使用的命令行操作,pwd 命令是一个简单、实用的工具,可以帮助你了解当前所在的工作目录的路径。

 

 

find命令介绍

find 命令是 Linux 系统中的一个强大工具,用于在文件系统中查找文件和目录。它可以根据不同的条件搜索文件,并根据需求执行相应的操作。下面是对 find 命令的更详细介绍:

 

如何使用find命令?

基本语法:

find [路径] [表达式选项] [动作选项]

路径:指定需要搜索的起始路径,默认为当前工作目录。可以指定根目录 “/” 进行全局搜索,或者指定具体目录进行局部搜索。

表达式选项:用于指定搜索的条件,可以是文件名、类型、大小等。

动作选项:用于指定搜索到的文件应该执行的操作,比如打印路径、删除等。

 

常用的表达式选项包括:


  • -name pattern:按照文件名匹配模式 pattern 进行搜索。例如,-name "*.txt" 可以搜索所有以 .txt 结尾的文件。
  • -iname pattern:类似于 -name,但对文件名的匹配不区分大小写。
  • type type:按照文件类型进行搜索,type 可以是 f(普通文件)、d(目录)、l(符号链接)、b(块设备文件)等。
  • -size n[单位]:按照文件大小进行搜索,n 后面跟上文件大小,可以使用不同的单位,如 c(字节)、k(KB)、M(MB)、G(GB)等。
  • -mtime n:按照文件的修改时间进行搜索,n 表示以 n 天为单位的时间。+n 表示大于 n 天的文件,-n 表示小于 n 天的文件。
  • -mmin n:类似于 -mtime,但以分钟为单位。
  • -maxdepth n:指定最大的搜索深度,将限制搜索到的子目录的层级。
  • -mindepth n:指定最小的搜索深度,将忽略较浅的层级。
  • -perm:按权限进行匹配。 -perm 后面的内容使用数字或符号来表示文件权限,举个例子 /u+rw,这里的 /u 表示用户(所有者)权限,rw 表示具有读写权限,中间的 + 用来表示「具有」。类比/g表示组权限,/o表示其他用户权限,可读r,可写w,可执行x,-表示没有该权限。


这只是一小部分常用的表达式选项,find 命令还有更多选项可以根据需要进行使用。

 

示例:

1. 搜索当前目录及子目录中的所有文件

find .

 

2.  搜索当前目录下所有以 .txt 结尾的文件

find . -name “*.txt”

 

3. 搜索/home目录及其子目录中包含“tdh”结尾的目录和文件

Find /home -name “*tdh*” 

4. 搜索用户家目录中大于 1MB 的文件并删除:

find ~/ -size +1M -delete

 

5. 搜索 /var/log 目录中最近 7 天内修改过的日志文件:

find /var/log -mtime -7

 

6. 搜索 /var/log 目录中最近 7 天前修改过的日志文件:

find /var/log -mtime +7

 

7. 搜索/opt目录及其子目录下其他用户具有读写权限的目录:

find /opt -type d -perm /o+rw

 

常用的动作选项


  • print:将搜索结果打印到标准输出。这是默认的动作选项,如果没有指定其他动作选项,则默认使用 -print。
  • exec command {} \;:对搜索到的文件执行指定的命令。可以在 {} 处插入搜索到的文件路径,并以 \; 结束命令。
  • delete:删除搜索到的文件。注意,删除是永久性的操作,请谨慎使用。


可以根据实际需求,组合使用不同的动作选项。

 

1. 搜索 /usr 目录中所有以 .txt 结尾的文件并打印路径:

find /usr -name "*.txt" -print

 

2. 搜索 /opt/young 目录下的所有 txt 文件,将这些文件复制到 /opt/young/backup 目录下:

find /opt/young -name "*.txt" -exec cp {} /opt/young/backup \;

注意:-exec 参数需要使用 \; 作为命令的结尾

 

3. 删除 /opt/young 目录下匹配的 txt 文件:

find /opt/young -name "*.txt" -exec rm {} ;

 

这些示例只是 find 命令的一些常见用法,根据具体需求,可以组合不同的选项和操作,实现更复杂的搜索和操作。

 

grep命令介绍

 

grep(全称为 Global Regular Expression Print)是 Linux 系统中一个强大的文本搜索工具,用于在文件中查找匹配指定模式的文本行。它可根据用户给定的模式进行搜索,并将匹配的结果打印出来。以下是对 grep命令的更详细介绍:

 

如何使用grep命令?

grep命令的基本语法:

grep [选项] 模式 [文件...]

- `选项`:用于指定搜索时的不同选项和参数,例如 `-i` 忽略大小写、`-r` 递归搜索等。

- `模式`:用于指定要搜索的模式或正则表达式。

- `文件`:可选参数,若不指定文件,则默认从标准输入中读取。

常用选项

以下是 `grep` 命令常用的选项:

 

  • -i:忽略大小写,使用这个选项可以忽略模式中字母的大小写差异。
  • -n:打印行号,显示匹配的行号。
  • -r:递归搜索子目录,这个选项允许 `grep` 在指定目录及其子目录中进行递归搜索。
  • -v:反向匹配,只显示不匹配模式的行。
  • -w:精确匹配单词,只匹配整个单词而不是单词的一部分。
  • -e:指定多个模式,可以同时指定多个模式进行搜索。
  • -A n:打印匹配行及其后 n 行的内容。
  • -B n:打印匹配行及其前 n 行的内容。
  • -C n或-n:打印匹配行及其前后各 n 行的内容。


 

这些选项可以根据实际需求进行组合使用。

 

示例

以下是一些使用 `grep` 命令的示例:

 

1. 在文件 `file.txt` 中搜索包含关键字 "error" 的行,并忽略大小写:

  Grep -i "error" file.txt

 

2. 在文件 `file.txt` 中搜索包含关键字 "error" 的行并显示行号:

  grep -n "error" file.txt

 

3. 在目录 `/var/log` 及其子目录中递归搜索包含关键字 "warning" 的行并打印文件名:

  grep -r -l "warning" /var/log

 

4. 在文件 `file.txt` 中搜索包含完整单词 "hello" 的行:

  grep -w "hello" file.txt

 

5. 在文件 `file1.txt` 和 `file2.txt` 中搜索同时包含 "error" 和 "warning" 的行:

  grep -e "error" -e "warning" file1.txt file2.txt

 

在标准输入流中搜索指定模式

基本语法

command | grep pattern

这里,command 是生成输出的命令,pattern 是要搜索的模式,| 是管道符,可以将两个命令分隔开,|左边命令的输出就会作为 | 右边命令的输入

 

TDH社区版运维时,可以使用grep命令快速定位服务相关的pod

Kubectl get pod -o wide | grep quark1

 

这些示例只是 `grep` 命令的一些基本用法,根据具体需求,你可以根据模式、文件和选项的不同组合,实现更复杂的搜索和过滤操作。

rm介绍
写在前面

哈喽大家好,今天跟大家分享一个需慎重使用的命令,小编记得刚学习Linux命令时,Leader严禁我使用该命令,那就是rm删除命令。

 

rm对应英文单词remove的缩写,为移除、删除的意思。

rm命令可以删除指定的一切文件和目录,被删除的文件和目录是无法进行复原的,会永久消失。Linux系统中是没有Ctrl+Z的撤销操作的,所以在使用时需要慎重考虑。

 

rm用法

rm命令并不复杂,在rm后跟上需要删除的文件和目录就可以,基本用法如下:

rm + [选项参数] + 文件名或目录名

若删除文件文件或目录,可以选择进入文件或目录的所在目录,执行rm命令,或者在其前面加上绝对路径,都效果是相同的。

举例说明:

通过rm a.txt命令,删除在/root/young/tdh路径下的a.txt文件,在询问时输入“y”代表“yes”、“n”代表“no”,此时a.txt目标文件已经被删除。

 

常用选项参数


  • -f:(force)强制删除,不会有讯问提醒。
  • -i:(interact)交互式删除,会有删除询问提醒。默认情况,若没有选项参数,默认提醒。
  • -r:(recursive)递归删除,用户删除目录及其内容。
  • -v:(verbose)显示详情信息,依次删除目录下的文件或目录,每个文件或目录都会有是否删除提醒。


 

示例

1. 强制删除文件

rm -f a.txt

 

直接删除文件,不会再次询问是否删除。

 

2. 交互式删除文件

rm -i a.txt 与rm a.txt 效果一致

 

 

3. 递归删除目录

rm -r young

删除young目录及其下面的文件或目录

 

4. 显示详情信息删除文件

rm -r -v 1

 

该命令会对“1”目录下的文件执行递归、详情问询删除,显示目录下的所有问价和目录,依次删除。

 

注意:

rm命令使用时,严禁使用rm -rf /* 命令,会使整个数据库及其文件被删除,造成非常严重的后果。

mv命令

哈喽大家好,今天做一个简单的Linux命令分享,主角为mv和cp命令。

什么是mv命令?

mv是英文单词move的缩写,使用该命令可以移动文件或目录到指定位置,也可以对文件或目录进行重命名。mv命令非常好用,可以帮助我们灵活地对系统中的目录/文件进行位置变动和名称修改。

如何使用mv命令?

mv命令的基本语法如下:

# mv 源文件或目录 目标文件或目录位置

其中,源文件或目录 是要移动或重命名的文件或目录的路径,标文件或目标位置 是文件或目录要被重命名为的新名称,或者是文件或目录要被移动到的位置。


1. 将文件移动到指定目录

使用命令: mv 1.txt /root/test 将1.txt文件移动到/root/test目录中。

2. 将文件重命名

用命令:mv 1.txt a.txt 将1.txt文件名称改为a.txt。

3. 使将目录移动到指定位置

使用命令:mv /root/test /root/young 将root下的test目录连同其子目录,移动到/root/young目录下。

4. 将目录重命名

使用命令:mv test test123 将test目录重新命名为test123目录。

常见参数选项

-i :覆盖目标文件前询问用户是否确认

-f :强制执行移动或重命名操作,当发生覆盖时无需进行询问,直接覆盖,即强制覆盖。

-u :当源文件比目标文件的创建时间更加新时,才允许执行覆盖命令。


cp命令

什么是cp命令?

cp是英文单词copy的缩写,用于复制文件盒目录,可以帮助我们在文件系统中穿件副本或备份文件。


如何使用cp命令?

cp命令语法如下:

# cp 源文件或目录 目标文件或目标位置

其中,源文件或目录 表示要复制的文件或目录的路径,目标文件或目标位置 表示复制后的文件或目录路径。使用语法与mv命令相似。


1. 复制文件到指定位置

使用命令:cp 源文件 目标位置

使用cp命令时,提供源文件路径和目标文件路径,复制文件时,会创建一个与源文件相同的新文件,并将其保存在目录位置上。

举例:将a.txtw文件从/root/young/test123路径下复制到/root/tdh路径下。

在复制过去的同时,也可以进行重命名新的文件名,例如将a.txt文件重命名为b.txt。


2. 
复制目录到指定位置

cp命令可以用户复制目录及其内容,若目录下有文件或子目录,可以使用-r进行递归拷贝复制。

# cp -r 源目录 目标目录

使用命令: cp -r /root/tdh /root/young 将根目录下的tdh文件夹,复制到/root/young目录下。


3. 
强制覆盖文件

如果目标位置已存在相同名称的文件,cp命令会默认询问是否覆盖,可以使用-f选项来强制执行覆盖命令,无需再次询问。 


运维知识分享,小编根据自己目前学习的Linux命令,与大家分享,欢迎大家来指正。
ls与ll命令

  • ll=ls -l 罗列文件夹下所有文件,可获得信息:文件类型、主组其他人读写权限、所属主、所属组、大小、修改时间、路径。
  • ls 罗列文件夹下所有文件名称/目录名
  • ls -a 列出目录下所有文件
  • ls -k 以字节的形式表示文件大小
  • ls -t 罗列信息以时间排列
  • ls -u 按上次访问时间排序
  • ls -s 以文件大小排序
  • ls -R 所有子目录下的文件
高频使用的是ll和ls。

2. 查看权限

根据上面的介绍,可以在当前目录下使用命令ls以查看当前目录的下的文件名称、数量、以及类型。

下面实操一下 


在使用ls命令时,可根据输出文件的颜色对文件类型做出判断,在默认情况下:
  • 白色:普通文件
  • 蓝色:目录
  • 红色:压缩文件
  • 绿色:可执行文件
  • 浅蓝色:链接文件
  • 红色闪烁:链接的文件有问题
  • 黄色:设备文件
  • 灰色:其他文件

由上图可以看出:在[jiaoben]目录下一共有5个文件,其中1个目录、3个压缩文件、1个普通文件。使用命令ll获取所在目录的所有文件和目录权限,如果想获得其他目录下权限,可以使用 ll /路径/文件名,紧接着使用ll命令查看目录详情列表:


由上图信息可知,“total 14880”表示该目录用到的block块数为14880。
接下来对其他信息作出分析,

在本行信息中,
  • “d”表表示目录,
  • “rwx”表示所属主可读可写可执行,其中r=读,w=写,x=执行
  • 第一个“r-x”表示目录所属组可读可执行。
  • 第二个“r-x”表示其他用户组可读可执行。
  • “2”表示链接到该目录的链接数为2。
  • 第一个“young”:当前文件的创建者
  • 第二个“young”:当前文件创建者所属组。
  • “139”当前问价占用空间大小,单位kb。
  • “Mar 10 15:46”:文件最后一次修改时间。
  • “etcdca”目录名(蓝色)(其他为文件名)

修改权限chown&chmod

3.1 chown命令

Change owner即用来改变某个目录或者文件的用户名和所属用户组。

-R 对当前目录下的所有档案与子目录进行相同拥有者的拥有者变更,变更文件拥有者。

Chown 用户名:组名 文件路径(可以使绝对路径也可以是相对路径)

例1:chown -R root:root tmp/tmp1

把tmp下的tmp1下的所有文件的属组够改成root和root。

例2:chown root:root /tmp/tmp1

就是把tmp下的tmp1的用户名和用户组改成root和root(只修改了tmp1的属组)。

3.2 chmod命令

Linux/Unix 的档案调用权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以以控制文件被他人调取的权限。使用方式:chmod [-cfvR] [–help] [–version] [who] [+ | - | =] [mode] 文件名

本次主要分享如何赋值:chmod 对象 (u/g/o/a) (+/-/=)(r/w/x/-)文件/目录

其中(u/g/o/a)表示权限对象,属主:u;属组:g;其他人:o;所有人:a(u+g+o)

(+/-/=)表示权限加减,增加权限:+;较少权限:-;权限说明:=

(r/w/x)表示权限类型,可读:r=4;可写:w=2;可执行:x=1;无权限:-

使用举例:


  • chmod u+x file1 属主增加file1执行权限
  • chmod g-w file1 属组减少file1可写权限
  • chmod a=rwx file1 所有人都可以读写执行
  • chmod a=- file1所有人都不可以读写执行
  • chmod ug=rw,o=r file1 属主属组可以读写,其他人只读


数字方式赋权文件,刚刚提及(r/w/x)表示权限类型,可读:r=4;可写:w=2;可执行:x=1;

语法为 chmod abc file,其中abc各为一个数字,分别代表User、Group、Other的权限。

r=4;w=2;x=1,若要rwx属性则4+2+1=7;若要rw-属性则4+2=6;若要r-x属性则4+1=5。

举例说明:


  • chmod 777 file 所有人可读可写可执行,就相当于chmod a=rwx file
  • chmod 751 file 属主可读可写可执行,属组可读可执行不可写,其他人只可执行


以上就是目录查看和权限赋予的方式,今天就先分享到这里了,如果大家喜欢的,欢迎关注博主,后续会持续更新优质内容的。


总结

本次分享的mv命令和cp命令都是运维人员常用的Linux命令,通过这两个命令,可以十分灵活地处理文件系统中的众多文件的位置和名称,同时可以给文件进行备份和复制。希望对大家的学习有帮助,谢谢。

评论
登录后可评论
发布者
icon
扬仔无敌
文章
31
问答
119
关注者
10
banner
关注星环科技
获取最新活动资讯

加入TDH社区版技术交流群

获取更多技术支持 ->

扫描二维码,立即加入