杜坤福博客

Hi, 请登录

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


文件和目录操作类

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信息。

F2


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

F2


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

F3



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:上述所有属性

实例:单文件复制 复制/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    将参数中列出的全部目录和子目录均递归地删除

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


rmdir命令 – remove empty directories, 删除空目录,非空则无法删除

语法:rmdir [OPTION]… DIRECTORY…

常用选项:

选项 | 含义
—— | ——
-p  | 递归删除,当删除完基名目录时,如果其父目录也为空,则一并删除;依此类推,直到非空目录为止
-v  | 显示命令执行的详细结果,通常与-p一同使用
示例:

1
~]# rmdir -pv /tmp/a/b/c

递归删除/tmp/a/b/c,直到非空目录为止,并显示删除详细结果



tree命令 – 以倒置的树状结构来显示目录结构

tree [OPTIONS] [DIRECTORY]
常用选项:

选项 | 含义
—— | ——
-L | 限定查看目录结构时最多展开几个层级,限定查看目录的深度
示例:

1
~]# tree /etc -L 2

以树状结构显示/etc/目录的目录结构,限定最多显示两个层级




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

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 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

less file

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

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

参数说明:

-b <缓冲区大小> 设置缓冲区的大小

-e 当文件显示结束后,自动离开

-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件

-g 只标志最后搜索的关键词

-i 忽略搜索时的大小写

-m 显示类似more命令的百分比

-N 显示每行的行号

-o <文件名> 将less 输出的内容在指定文件中保存起来

-Q 不使用警告音

-s 显示连续空行为一行

-S 行过长时间将超出部分舍弃

-x <数字> 将”tab”键显示为规定的数字空格

/字符串:向下搜索”字符串”的功能

?字符串:向上搜索”字符串”的功能

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less 命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一页

[pagedown]: 向下翻动一页

[pageup]: 向上翻动一页




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

more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。

参数:

-num 一次显示的行数

-d 提示使用者,在画面下方显示 [Press space to continue, ‘q’ to quit.] ,如果使用者按错键,则会显示 [Press ‘h’ for instructions.] 而不是 ‘哔’ 声

-l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能

-f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)

-p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容

-c 跟 -p 相似,不同的是先显示内容再清除其他旧资料

-s 当遇到有连续两行以上的空白行,就代换为一行的空白行

-u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)

+/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示

+num 从第 num 行开始显示

fileNames 欲显示内容的文档,可为复数个数



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  full date,以年-月-日显示 。例如

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

2017-09-17

%T  time,时间,包含时分秒

%Y  year,年份,四位显示

%m  month,月份,01-12显示

%d   day of month,日期,01-31显示

%H  hour,小时,00-23显示

%M  minute,分钟00-59显示

%S  second,秒

%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 0628112810.10

Tue Jun 28 11:28:10 CST 2010

 

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:14]# date

Sun Sep 17 12:19:20 CST 2017

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



cal命令   可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。

1.命令格式:

cal [参数][月份][年份]

2.命令功能:

用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

3.命令参数:

-1 显示一个月的月历

-3 显示系统前一个月,当前月,下一个月的月历

-s  显示星期天为一个星期的第一天,默认的格式

-m 显示星期一为一个星期的第一天
-j  显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y  显示当前年份的日历

image.png









网络相关类

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

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

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

image.png






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

….

这表示网络可以连通


 




    用户管理类

id  [-gGnru][--help][--version][用户名称]

参数说明:

-g或--group    显示用户所属群组的ID。

-G或--groups  显示用户所属附加群组的ID。

-n或--name    显示用户,所属群组或附加群组的名称。

-r或--real        显示实际ID。

-u或--user       显示用户ID。

-help              显示帮助。

-version          显示版本信息。

image.png


su   [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]


参数说明:

-m, -p, --preserve-environment  不重置环境变量

 -g, --group <组>             指定主组

 -G, --supp-group <组>        指定一个辅助组

 -, -l, --login                  使 shell 成为登录 shell

 -c, --command <命令>            使用 -c 向 shell 传递一条命令

 --session-command <命令>        使用 -c 向 shell 传递一条命令而不创建新会话

 -f, --fast                      向shell 传递 -f 选项(csh 或 tcsh)

 -s, --shell <shell>             若 /etc/shells 允许,则运行 shell

 -h, --help     显示此帮助并退出

 -V, --version  输出版本信息并退出



groupadd  [-g <群组识别码> <-o>][-n <新群组名称>][群组名称]


参数

  • -g <群组识别码>  设置欲使用的群组识别码。

  • -o  重复使用群组识别码。

  • -n <新群组名称>  设置欲使用的群组名称。



groupmod  [-g <群组识别码> <-o>][-n <新群组名称>][群组名称]


参数:

-g <群组识别码>  设置欲使用的群组识别码。

-o  重复使用群组识别码。

-n <新群组名称>  设置欲使用的群组名称。



groupdel   [群组名称]


Linux groupdel命令用于删除群组。需要从系统上删除群组时,可用groupdel(group delete)指令来完成这项工作。倘若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组。




useradd  添加用户命令   -D [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-s <shell>]

如果使用时不带 -D 选项,useradd 命令使用命令行上指定的值和系统的默认值创建一个新用户。根据命令行选项,useradd命令也会更新系统文件和创建新用户的主目录并复制初始文件。

参数说明:

-g或--group  显示用户所属群组的ID。

-G或--groups  显示用户所属附加群组的ID。

-n或--name  显示用户,所属群组或附加群组的名称。

-r或--real  显示实际ID。

-u或--user  显示用户ID。

-help  显示帮助。

-version  显示版本信息。

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


usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]

参数说明:

-c<备注>  修改用户帐号的备注文字。

-d<登入目录>  修改用户登入时的目录。

-e<有效期限>  修改帐号的有效期限。

-f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。

-g<群组>  修改用户所属的群组。

-G<群组>  修改用户所属的附加群组。

-l<帐号名称>  修改用户帐号名称。

-L  锁定用户密码,使密码无效。

-s<shell>  修改用户登入后所使用的shell。

-u<uid>  修改用户ID。

-U  解除密码锁定。




userdel  [-r][用户帐号]


参数说明:

-r  删除用户登入目录以及目录中所有文件。




passwd   [-k] [-l] [-u [-f]] [-d] [-S] [username]


必要参数:

-d 删除密码

-f 强制执行

-k 更新只能发送在过期之后

-l 停止账号使用

-S 显示密码信息

-u 启用已被停止的账户

-x 设置密码的有效期

-g 修改群组密码

-i 过期后停止用户账号


选择参数:

--help 显示帮助信息

--version 显示版本信息




gpasswd  是Linux下工作组文件/etc/group和/etc/gshadow的管理工具,用于指定要管理的工作组。


选项详解:

      -a : 添加用户到组

      -d : 从组删除用户

      -A:指定管理员

      -M:指定组成员和-A的用途差不多;

      -r:删除密码;

      -R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。



newgrp  [群组名称]

newgrp指令类似login指令,当它是以相同的帐号,另一个群组名称,再次登入系统。欲使用newgrp指令切换群组,您必须是该群组的用户,否则将无法登入指定的群组。单一用户要同时隶属多个群组,需利用交替用户的设置。若不指定群组名称,则newgrp指令会登入该用户名称的预设群组。



chage  [选项] 用户名   是用来修改帐号和密码的有效期限。

参数说明:

-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。

-M:密码保持有效的最大天数。

-w:用户密码到期前,提前收到警告信息的天数。

-E:帐号到期的日期。过了这天,此帐号将不可用。

-d:上一次更改的日期。

-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。

-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。



chsh命令  用于更改使用者 shell 设定。

实例

shell>> chsh
Changing fihanging shell for user1
Password: [del]
New shell [/bin/tcsh]: ### [是目前使用的 shell]
[del]
shell>> chsh -l ### 展示 /etc/shells 档案内容
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh

改变当前的shell。当前的shell 设置为//bin/bash,通过chsh命令,改变shell的设置/bin/csh。

# chsh
Changing shell for root.
New shell [/bin/bash]: /bin/csh //输入新的shell地址
Shell changed.

通过 -s 参数改变当前的shell设置

# chsh -s /bin/csh//改变当前设置为 /bin/csh
Changing shell for root.
 Shell not changed.


chfn命令    提供使用者更改个人资讯,用于 finger and mail username


实例

改变finger信息

# chfn

Changing finger information for root.

Name [root]: hnlinux

Office []: hn

Office Phone []: 888888

Home Phone []: 9999999


Finger information changed.

改变账号真实姓名


# chfn -f hnunix

Changing finger information for root.

Finger information changed.




finger  [options] user[@address]

Linux finger命令可以让使用者查询一些其他使用者的资料。会列出来的资料有:

  • Login Name

  • User Name

  • Home directory

  • Shell

  • Login status

  • mail status

  • .plan

  • .project

  • .forward

其中 .plan、.project 和 .forward 就是使用者在他的 Home Directory 里的 .plan , .project 和 .forward 等档案里的资料。如果没有就没有。finger 指令并不限定于在同一服务器上查询,也可以寻找某一个远端服务器上的使用者。只要给一个像是 E-mail address 一般的地址即可。

参数说明:

-l  多行显示。

-s  单行显示。这个选项只显示登入名称、真实姓名、终端机名称、闲置时间、登入时间、办公室号码及电话号码。如果所查询的使用者是远端服务器的使用者,这个选项无效。



whoami  显示自身的用户名称,本指令相当于执行”id -un”指令。


参数说明:

–help  在线帮助。

–version  显示版本信息。


pwck  用来验证系统认证文件/etc/passwd和/etc/shadow的内容和格式的完整性。

选项:

-q:仅报告错误信息;

-s:以用户id排序文件“/etc/passwd”和“/etc/shadow”;

-r:只读方式运行指令。



grpck   用于验证组文件的完整性,在验证之前,需要先锁定(lock)组文件/etc/group和/etc/shadow。

grpck命令检查数据是否正确存放,每条记录是否都包含足够的信息,是否有一个唯一的组名,是否包含正确的用户,是否正确设置了组的管理员等。grpck检查发现错误以后,在命令行提示用户是否删除错误的记录。如果用户没有明确回答删除记录,grpck终止运行。


选项

-r:只读模式;

-s:排序组id。


chmod   Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他人所调用。

参数说明

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

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

其中:

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

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

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


其他参数说明:

-c : 若该文件权限确实已经更改,才显示其更改动作

-f : 若该文件权限无法被更改也不要显示错误讯息

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

-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)

–help : 显示辅助说明

–version : 显示版本


chown命令   chown [-cfhvR] [--help] [--version] user[:group] file...

Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者。利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。 

一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的文件拥有者,也没有权限可以自己的文件拥有者改设为别人。只有系统管理者(root)才有这样的权限。


参数 :

user : 新的文件拥有者的使用者 ID

group : 新的文件拥有者的使用者群体(group)

-c : 若该文件拥有者确实已经更改,才显示其更改动作

-f : 若该文件拥有者无法被更改也不要显示错误讯息

-h : 只对于连结(link)进行变更,而非该 link 真正指向的文件

-v : 显示拥有者变更的详细资料

-R : 对目前目录下的所有文件与子目录进行相同的拥有者变更(即以递回的方式逐个变更)

–help : 显示辅助说明

–version : 显示版本


install命令 的作用是安装或升级软件或备份数据,它的使用权限是所有用户。install命令和cp命令类似,都可以将文件/目录拷贝到指定的地点。但 是,install允许你控制目标文件的属性。install通常用于程序的makefile,使用它来将程序拷贝到目标(安装)目录。

选项

--backup[=CONTROL]:为每个已存在的目的地文件进行备份。

-b:类似 --backup,但不接受任何参数。

-c:(此选项不作处理)。

-d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。

-D:创建<目的地>前的所有主目录,然后将<来源>复制至 <目的地>;在第一种使用格式中有用。

-g,--group=组:自行设定所属组,而不是进程目前的所属组。

-m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。

-o,--owner=所有者:自行设定所有者 (只适用于超级用户)。

-p,--preserve-timestamps:以<来源>文件的访问/修改时间作为相应的目的地文件的时间属性。

-s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。

-S,--suffix=后缀:自行指定备份文件的<后缀>。

-v,--verbose:处理每个文件/目录时印出名称。

--help:显示此帮助信息并离开。

--version:显示版本信息并离开。


mktemp命令     用于建立暂存文件

mktemp建立的一个暂存文件,供shell script使用。


参数

  -q  执行时若发生错误,不会显示任何信息。

  -u  暂存文件会在mktemp结束前先行删除。

[文件名参数]  文件名参数必须是以”自订名称.XXXXXX”的格式。

实例

使用mktemp 命令生成临时文件时,文件名参数应当以”文件名.XXXX”的形式给出,mktemp 会根据文件名参数建立一个临时文件。在命令行提示符输入如下命令:

mktemp tmp.xxxx #生成临时文件







搜索和查询类

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

image.png

语法格式whereis [options] name…

常用选项:

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

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

image.png


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

image.png


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

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

image.png

常用选项:

-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命令可以用于传递一个或多个变量的值到任何后继脚本。 

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

写得不是很完善,有错的地方请各位朋友帮指正。



相关推荐

评论

  • 昵称 (必填)
  • 邮箱
  • 网址
二维码
评论