阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux基础教程之基础命令总结

177次阅读
没有评论

共计 7583 个字符,预计需要花费 19 分钟才能阅读完成。

文件和目录操作类

ls 命令  list 列出指定目录下的内容

语法格式:ls [OPTION]… [FILE]…

常用选项:

- a 显示所有文件和隐藏文件。

- A 显示除. 和.. 之外的所有文件。

-l 长格式列表,显示文件的详细属性信息

-h  –human-readanle, 把文件大小单位换算,换算后可能会是非精确值

-d  查看目录自身而非其内部文件列表

-r  reverse,逆序显示

-R  recursive  , 递归显示

-t   显示最后一次修改的文件

-n  打印文件的 UID 和 GID

-i  显示文件的 inode 信息

-t  用文件和目录的更改时间排序
-F  在不同类型的文件的文件名结尾追加一个字符以示区别。可执行文件后加”*”,目录后加”/”,管道文件后加”|”,套接字文件后加”=”,普通文件没有后缀。比较有用。

–full-time  列出文件的完整时间格式

例如:显示 /etc 里面所有的内容包含隐藏文件  ls  -ali 最左边一列是文件的 inode 信息。

Linux 基础教程之基础命令总结

出文件的完整时间格式 ls -ali –full-time

Linux 基础教程之基础命令总结

假如我在 /tmp 下面新建了一个 hello.txt 文件,可以用 ls -lrt 进行逆序按时间排序出最下面找到它:

Linux 基础教程之基础命令总结

pwd 命令   printing working directory 显示当前工作目录

 

cd 命令  change directory 切换目录

cd  不带任何参数表示切换到家目录

cd  ~  切回自己家目录,波浪线~ 表示家目录

cd  ~  USERNAME 切换到指定用户家目录

cd  –   上一次所在目录和当前目录之间来回切换

.       表示当前目录

cd  ..   切换到当前目录的上一级目录

touch 命令   用于创建一个新文件或修改文件时间戳

touch [OPTION]… FILE…

常用选项:

-c   –no-create, 指定的文件路径不存在时不予创建

-a   仅修改访问时间 access time

-m  仅修改 modify time(文件内容修改)

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

 

cp 命令 copy 用于复制源文件或者目录到

语法格式:单源复制:cp [OPTION]… [-T] SOURCE DEST

多源复制:cp [OPTION]… SOURCE… DIRECTORY

常用选项:

-i:交互式复制,即覆盖之前提醒用户确认;

-f:强制覆盖目标文件;

-r, -R:递归复制目录;

-d:复制符号链接文件本身,而非其指向的源文件;

-a:-dR –preserve=all, archive,用于实现归档;

-p   –preserv=

mode:权限

ownership:属主和属组

timestamps: 时间戳

context:安全标签

xattr:扩展属性

links:符号链接

all:上述所有属性

保持指定的属性(默认:模式, 所有权, 时间戳)

-P   –no-dereference   不跟随源文件中的符号链接

实例:单文件复制 复制 /etc/fstab 到 tmp 下 文件不存在时:

[root@dxl /tmp 14:35:16]# cp /etc/fstab .

[root@dxl /tmp 14:36:44]# ls

1.txt  22  33  fstab  functions  hello.txt  test.txt

复制目录时目标文件夹存在,则把源目录里面的内容复制到目标文件夹里面。要是目标不存在则创建。

 

mkdir 命令  创建目录 make directories

语法格式:mkdir [OPTION]… DIRECTORY…

常用选项:

-p  通俗地说对于不存在的父和子目录一起创建出来

-v 显示过程

-m 直接给定权限

注意:路径基名方为命令的作用对象;基名之前的路径必须得存在;

例如:在 tmp 下面创建目录 centos/a/b/c

[root@dxl /tmp 15:16:35]# mkdir -pv /tmp/centos/a/b/c

mkdir: created directory `/tmp/centos’

mkdir: created directory `/tmp/centos/a’

mkdir: created directory `/tmp/centos/a/b’

mkdir: created directory `/tmp/centos/a/b/c’

 

mv 移动命令,还可以对文件进行重命名

语法格式:mv [OPTION]… [-T] SOURCE DEST

mv [OPTION]… SOURCE… DIRECTORY

mv [OPTION]… -t DIRECTORY SOURCE…

常用选项:- f 强制移动

-i 交互式

例如:把 tmp 下面的 1.txt 移动到 tom 文件夹里面并命名为 2.txt。

[root@dxl /tmp 15:23:17]# mv 1.txt  ./tom/2.txt

 

 

rm    删除命令remove

语法格式:rm [OPTION]… FILE…

常用选项:-f 强制删除

-i  交互

-r  将参数中列出的全部目录和子目录均递归地删除

注意:删除命令是一个非常危险的操作,所有不用的文件建议不要直接删除,而是移动至某个专用目录;(模拟回收站),过段时间后,非常明确肯定不要了再删除。

开关机类命令(线上服务器禁用)

shutdown 关机命令

语法格式 shutdown [OPTIONS…] [TIME] [WALL…]

常用选项:

-r  关机后重启

-h 将系统关机

-c  取消关机

例如:shutdnow -h -now 马上关机  shutdnow  +30:30 分钟后关机

 

halt   关机

poweroff  关闭系统并且切断电源

-n:关闭操作系统时不执行 sync 操作;

-w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;

-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;

-f:强制关闭操作系统;

-i:关闭操作系统之前关闭所有的网络接口;

-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。

如果确认系统中已经没有用户存在且所有数据都已保存,需要立即关闭系统,可以使用 poweroff 命令。

reboot 重启命令  用来重新启动正在运行的 Linux 操作系统

 

文本查看类命令

cat 命令  concatenate 查看文本文件内容

语法格式 cat [OPTION]… [FILE]…

常用选项

-n 给每行编号,包括空行

-E 显示空格符,包括空行

 

tac 命令 将文件以行为单位反序输出,最后一行先显示

语法格式 tac [OPTION]… [FILE]…

 

less 命令   翻屏查看文件

less file

按一下回车键往文件尾部查看一行,按空格键往文件尾部翻一屏

按 pageup 和 pagedown 键前后翻屏,按上下箭头可以上下翻一行

more 命令  从头到尾查看文件,不可以回头,不是很好用

 

head 命令   显示文件的前 n 行,默认是显示前十行

语法格式:head [参数]… [文件]…

常用选项:-v 显示文件名

-c< 字节 > 显示字节数。head  -c 50 /etc/rc.d/init.d/functions 显示前 50 字节,要是改为 -50. 则显示文件后 50 字节。

-n< 行数 > 显示的行数。显示文件的前 50 行:head  -50 /etc/rc.d/init.d/functions

 

tail 命令  显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

语法格式:tail [选项]  文件

常用选项 -n:查看文件尾部 n 行

-f:查看文件尾部内容结束后不退出,接着显示更新的行。很有用

例如:tail -3f  /tmp/functions  查看 functions 文件尾部 3 行后不退出

 stat 命令:显示文件和文件的系统熟性,包括文件名,大小,时间戳等信息,通俗地说就像我们看到 windows 右键,文件属性看到的信息类似。

例如

[root@dxl ~ 10:30:55]# stat /tmp/functions

File: `/tmp/functions’

Size: 25427           Blocks: 56         IO Block: 4096   regular file

Device: 803h/2051d      Inode: 391743      Links: 1

Access: (0644/-rw-r–r–)  Uid: (0/    root)   Gid: (0/    root)

Access: 2017-09-17 10:18:47.899001385 +0800

Modify: 1982-09-19 08:08:39.000000000 +0800

Change: 2017-09-16 13:44:53.754984934 +0800

 

日期时间类

date 命令  用来显示或设定系统的日期与时间。只有 root 用户可用。当系统正有一个以上的用户在运行时,不要更改日期。

语法格式:Pdate [OTION]… [+FORMAT]

常用格式符:

 

%F 以年 - 月 - 日显示。例如

[root@dxl ~ 11:10:31]# date +%F

2017-09-17

%T  时间,包含时分秒

%Y  年份,四位显示

%m  月份,01-12 显示

%d   日期,01-31 显示

%H  小时,00-23 显示

%M  分钟 00-59 显示

%S  秒

%s: 从 1970 年 1 月 1 号(unix 元年)0 点 0 分 0 秒到命令执行那一刻经过的秒数;

设定日期格式:date [月日小时分钟年(可用四位也可以两位)][. 秒]例如

[root@dxl ~ 11:32:25]# date 062811282010.10

Mon Jun 28 11:28:10 CST 2010

[root@dxl ~ 11:28:10]# date 0628112811.10

Tue Jun 28 11:28:10 CST 2011

 

clock=hwclock   硬件时钟命令  显示或设定硬件时钟

-s, –htocsys:以硬件为准,把系统调整为与硬件时间相同;

例如:我的系统时间不对了

[root@dxl ~ 12:09:29]# date

Tue Jun 28 12:09:33 CST 2011

[root@dxl ~ 12:09:33]# hwclock

Sun 17 Sep 2017 12:18:56 PM CST  -0.783353 seconds

[root@dxl ~ 12:09:57]# hwclock -s

[root@dxl ~ 12:19:12]# datte

-bash: datte: command not found

[root@dxl ~ 12:19:14]# date

Sun Sep 17 12:19:20 CST 2017

-w, –systohc:以系统为准,把硬件时间调整为与系统时钟相同;

 

网络相关类

ifconfig  或 ip addr list  查看活动接口的 ip 地址

 

ss 命令  ss 是 Socket Statistics 的缩写。顾名思义,ss 命令可以用来获取 socket 统计信息,它可以显示和 netstat 类似的内容。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效。

例如查看 22 端口状态:ss  -tnl

[root@dxl ~ 12:35:54]# ss -tnl

State      Recv-Q Send-Q        Local Address:Port          Peer Address:Port

LISTEN     0      128                      :::22                      :::*

LISTEN     0      128                       *:22                       *:*

LISTEN     0      100                     ::1:25                      :::*

LISTEN     0      100               127.0.0.1:25                       *:*

ping 命令  测试网络的目标主机和当前主机的连通性,例如

[root@dxl ~ 12:24:59]# ping www.baidu.com

PING www.a.shifen.com (14.215.177.39) 56(84) bytes of data.

64 bytes from 14.215.177.39: icmp_seq=1 ttl=55 time=7.17 ms

64 bytes from 14.215.177.39: icmp_seq=2 ttl=55 time=6.11 ms

….

这表示网络可以连通

 

用户管理类

useradd  添加用户命令

例如~]# useradd -s /bin/tcsh centos7  添加一个叫 centos7 的用户并指定它的 shell 为 tcsh

搜索和查询类

file 命令  查看文件内容类型

例如

[root@dxl /tmp 16:56:00]# file /etc/fstab

/etc/fstab: ASCII text

可以知道 fstab 是一个标准的文本文件

 

type 命令  判断一个命令是外部命令还是内部命令

语法格式 type  COMMAND

help 命令 用于 shell 内部命令的帮助信息

语法格式 help COMMAND

man  命令   帮助手册

语法格式 man COMMAND

Info 命令  在线获取命令帮助

which 命令  用于查找某个可执行的命令文件的位置

格式 which  命令名称

例如:

[root@dxl /tmp 17:13:02]# which passwd

/usr/bin/passwd

whereis 命令 只能用于程序名的搜索,而且只搜索二进制文件  例如:whereis ls

语法格式 whereis [options] name…

常用选项:

-b: 仅搜索二进制程序路径

-m: 仅搜索使用手册文件路径;

 

 

who 命令  识别当前登录的用户,显示关于 当前在本地系统上的所有用户的信息

w 命令  显示目前登入系统的用户信息

语 法:w [-fhlsuV][用户名称]

常用选项:

-f  开启或关闭显示用户从何处登入系统。
-h  不显示各栏位的标题信息列。
-l  使用详细格式列表,此为预设值。
-s  使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的 CPU 时间。
-u  忽略执行程序的名称,以及该程序耗费 CPU 时间的信息。
-V  显示版本信息。

 

history 命令  命令历史是 bash 基础特性之一

history 命令默认最大的保存条数是 1000 条,存放在用户家目录下.bash_history

控制 history 条数的环境变量:HISTSIZE 控制当前 shell 进程可保留的条数

HISTFILESIZE: 控制命令历史文件.bash_history 保存的条数

HISTSIZE=100

HISTFILESIZE=100  这两行追加到 当前用户家目录下的.bash_profile 文件中就可以改变默认值,要是都设为零,那么久禁用了历史命令记录。

命令用法:

history -c 清除当前 shell 进程中的命令记录

history -d offset: 删除历史记录的第 n 条命令,例如:history -d5 删除第五条命令记录

history -r: 从历史文件列表到当前历史记录列表中

history -w:

调用命令历史列表的命令

!! 或 ctrl+p : 重复执行上一次命令

!n : 执行历史命令列表第 n 条命令,例如!5, 执行命令列表第 5 条命令

!STRING: 执行命令历史列表中最近一个以 STRING 开头的命令。还可以输入 Ctrl+ R 进行搜索。

小技巧:调用上一条命令的最后一个参数:

快捷键:ESC, .

字符串:!$

例如:我执行了 ls /etc/sysconfig/network-scripts/ifcfg-eth 后,然后在其他命令想再调用后面的参数 /etc/sysconfig/network-scripts/ifcfg-eth,先按下 ESC 键再按.  就会引用进来。很实用。

其它类

tty  显示当前终端  例如

[root@dxl ~ 12:45:49]# tty

/dev/pts/0

伪终端是 pty。

虚拟终端 tty,centos7 启动后默认有 6 个 tty1–tty6,alt+F1-F6 键切换

串行终端 ttyS:用于串行试逐位数据传输,常见有 25 针 9 针连接器。

物理终端,控制台:console,

 

 

echo 命令  打印或输出内容, 查询变量值,常用于编程

[root@dxl ~ 12:46:19]# echo $HISTSIZE

1000

[root@dxl ~ 18:13:37]# echo $HISTFILESIZE

1000

语 法:echo [-ne][字符串]或 echo [–help][–version]
补充说明:echo 会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。
参 数:-n 不要在最后自动换行
-e 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般
文字输出:
a 发出警告声;
b 删除前一个字符;
c 最后不加上换行符号;
f 换行但光标仍旧停留在原来的位置;
n 换行且光标移至行首;
r 光标移至行首,但不换行;
t 插入 tab;
v 与 f 相同;
\ 插入字符;
nnn 插入 nnn(八进制)所代表的 ASCII 字符;
–help 显示帮助
–version 显示版本信息

export 命令   设置或显示环境变量。(比如我们要用一个命令,但这个命令的执行文件不在当前目录,这样我们每次用的时候必须指定执行文件的目录,麻烦,在代码中先执行 export,这个相当于告诉程序,执行某某东西时,需要的文件或什么东东在这些目录里)

语 法:export [-fnp][变量名称]=[变量设置值]
补充说明:在 shell 中执行程序时,shell 会提供一组环境变量。export 可新增,修改或删除环境变量,供后续执行的程序使用。export 的效力仅及于该此登陆操作。
参 数:
-f 代表 [变量名称] 中为函数名称。
-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
-p 列出所有的 shell 赋予程序的环境变量。
一个变量创建时,它不会自动地为在它之后创建的 shell 进程所知。而命令 export 可以向后面的 shell 传递变量的值。当一个 shell 脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。export 命令可以用于传递一个或多个变量的值到任何后继脚本。—-《UNIX 教程》

startx  在虚拟终端接口输入命令 startx &,可以启动图像界面接口

写得不是很完善,有错的地方请各位朋友帮指正。等到就业班课程看完程后再来个详细的总结。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-12-03发表,共计7583字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中