Linux虚拟机的常用命令

1、cat命令

语法格式:

cat [-AbeEnstTuv] [--help] [--version] fileName

-n 或 --number:由 1 开始对所有输出的行数编号。

-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。

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

-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。

-E 或 --show-ends : 在每行结束处显示 $。

-T 或 --show-tabs: 将 TAB 字符显示为 ^I。

-e : 等价于 -vE。

-A, --show-all:等价于 -vET。

-e:等价于"-vE"选项;

-t:等价于"-vT"选项;

2、chmod命令

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

语法格式

chmod [-cfvR] [--help] [--version] mode file...
  • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

  • -c : 若该文件权限确实已经更改,才显示其更改动作
  • -f : 若该文件权限无法被更改也不要显示错误讯息
  • -v : 显示权限变更的详细资料
  • -R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
  • --help : 显示辅助说明
  • --version : 显示版本
实例

将文件 file1.txt 设为所有人皆可读取 :

chmod ugo+r file1.txt

将文件 file1.txt 设为所有人皆可读取 :

chmod a+r file1.txt

将文件 file1.txt 与 file2.txt 设为该文件拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :

chmod ug+w,o-w file1.txt file2.txt

将 ex1.py 设定为只有该文件拥有者可以执行 :

chmod u+x ex1.py

将目前目录下的所有文件与子目录皆设为任何人可读取 :

chmod -R a+r *

此外chmod也可以用数字来表示权限如 :

chmod 777 file

语法为:

chmod abc file

其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

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

chmod 777 file

效果相同

chmod ug=rwx,o=x file

chmod 771 file

3、mv 命令
Linux mv命令用来为文件或目录改名、或将文件或目录移入其它位置。
语法格式:
mv [options] source dest
mv [options] source... directory
参数说明:
-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在mv操作要覆盖某已有的目标文件时不给任何指示;
实例:
将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs。


mv info/ logs 
再如将/usr/student下的所有文件和目录移到当前目录下,命令行为:


$ mv /usr/student/*  
4、touch

Linux touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。

ls -l 可以显示档案的时间记录


语法格式:

touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
  • 参数说明
  • a 改变档案的读取时间记录。
  • m 改变档案的修改时间记录。
  • c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
  • f 不使用,是为了与其他 unix 系统的相容性而保留。
  • r 使用参考档的时间记录,与 --file 的效果一样。
  • d 设定时间与日期,可以使用各种不同的格式。
  • t 设定档案的时间记录,格式与 date 指令相同。
  • --no-create 不会建立新档案。
  • --help 列出指令格式。
  • --version 列出版本讯息。

实例

使用指令"touch"修改文件"testfile"的时间属性为当前系统时间,输入如下命令:

$ touch testfile                #修改文件的时间属性 

首先,使用ls命令查看testfile文件的属性,如下所示:

$ ls -l testfile                #查看文件的时间属性  
#原来文件的修改时间为16:09  
-rw-r--r-- 1 hdd hdd 55 2011-08-22 16:09 testfile  

执行指令"touch"修改文件属性以后,并再次查看该文件的时间属性,如下所示:

$ touch testfile                #修改文件时间属性为当前系统时间  
$ ls -l testfile                #查看文件的时间属性  
#修改后文件的时间属性为当前系统时间  
-rw-r--r-- 1 hdd hdd 55 2011-08-22 19:53 testfile  

使用指令"touch"时,如果指定的文件不存在,则将创建一个新的空白文件。例如,在当前目录下,使用该指令创建一个空白文件"file",输入如下命令:

$ touch file            #创建一个名为“file”的新的空白文件 
5、rm命令

Linux rm命令用于删除一个文件或者目录。

语法格式:

rm [options] name...

参数

  • -i 删除前逐一询问确认。
  • -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  • -r 将目录及以下之档案亦逐一删除。

实例

删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r",例如:

# rm  test.txt 
rm:是否删除 一般文件 "test.txt"? y  
# rm  homework  
rm: 无法删除目录"homework": 是一个目录  
# rm  -r  homework  
rm:是否删除 目录 "homework"? y 

删除当前目录下的所有文件及目录,命令行为:

rm  -r  * 

文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令。


6、cp命令

Linux cp命令主要用于复制文件或目录。

cp [options] source dest

cp [options] source... directory

参数说明

  • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  • -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
  • -f:覆盖已经存在的目标文件而不给出提示。
  • -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  • -l:不复制文件,只是生成链接文件。

实例

使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newtest"下,输入如下命令:

$ cp r test/ newtest          

注意:用户使用该指令复制目录时,必须使用参数"-r"或者"-R"。



7、adduser命令

Linux adduser命令用于新增使用者帐号或更新预设的使用者资料。

adduser 与 useradd 指令为同一指令(经由符号连结 symbolic link)。

使用权限:系统管理员。

adduser是增加使用者。相对的,也有删除使用者的指令,userdel。语法:userdel [login ID]

语法

adduser [-c comment] [-d home_dir] [-e expire_date] [-f inactive_time] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir] | -M] [-p passwd] [-s shell] [-u uid [ -o]] [-n] [-r] loginid

adduser -D [-g default_group] [-b default_home] [-f default_inactive] [-e default_expire_date] [-s default_shell]

参数说明

  • -c comment 新使用者位于密码档(通常是 /etc/passwd)的注解资料
  • -d home_dir 设定使用者的家目录为 home_dir ,预设值为预设的 home 后面加上使用者帐号 loginid
  • -e expire_date 设定此帐号的使用期限(格式为 YYYY-MM-DD),预设值为永久有效
  • -f inactive_time 范例:

实例

添加一个一般用户

# useradd kk //添加用户kk

为添加的用户指定相应的用户组

# useradd ?g root kk //添加用户kk,并指定用户所在的组为root用户组

创建一个系统用户

# useradd ?r kk //创建一个系统用户kk

为新添加的用户指定/home目录

# useradd-d /home/myf kk //新添加用户kk,其home目录为/home/myf
//当用户名kk登录主机时,系统进入的默认目录为/home/myf


8、date命令

Linux date命令可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:

时间方面:

  • % : 印出 %
  • %n : 下一行
  • %t : 跳格
  • %H : 小时(00..23)
  • %I : 小时(01..12)
  • %k : 小时(0..23)
  • %l : 小时(1..12)
  • %M : 分钟(00..59)
  • %p : 显示本地 AM 或 PM
  • %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
  • %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
  • %S : 秒(00..61)
  • %T : 直接显示时间 (24 小时制)
  • %X : 相当于 %H:%M:%S
  • %Z : 显示时区

日期方面:

  • %a : 星期几 (Sun..Sat)
  • %A : 星期几 (Sunday..Saturday)
  • %b : 月份 (Jan..Dec)
  • %B : 月份 (January..December)
  • %c : 直接显示日期与时间
  • %d : 日 (01..31)
  • %D : 直接显示日期 (mm/dd/yy)
  • %h : 同 %b
  • %j : 一年中的第几天 (001..366)
  • %m : 月份 (01..12)
  • %U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
  • %w : 一周中的第几天 (0..6)
  • %W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
  • %x : 直接显示日期 (mm/dd/yy)
  • %y : 年份的最后两位数字 (00.99)
  • %Y : 完整年份 (0000..9999)

若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][.ss],其中 MM 为月份,DD 为日,hh 为小时,mm 为分钟,CC 为年份前两位数字,YY 为年份后两位数字,ss 为秒数。

使用权限:所有使用者。

当您不希望出现无意义的 0 时(比如说 1999/03/07),则可以在标记中插入 - 符号,比如说 date '+%-H:%-M:%-S' 会把时分秒中无意义的 0 给去掉,像是原本的 08:09:04 会变为 8:9:4。另外,只有取得权限者(比如说 root)才能设定系统时间。

当您以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。

语法

date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]

参数说明

  • -d datestr : 显示 datestr 中所设定的时间 (非系统时间)
  • --help : 显示辅助讯息
  • -s datestr : 将系统时间设为 datestr 中所设定的时间
  • -u : 显示目前的格林威治时间
  • --version : 显示版本编号

实例

显示当前时间

# date
 5 12 14:08:12 CST 2010
# date '+%c' 
20100512 星期三 140902
# date '+%D' //显示完整的时间
05/12/10
# date '+%x' //显示数字日期,年份两位数表示
20100512
# date '+%T' //显示日期,年份用四位数表示
14:09:31
# date '+%X' //显示24小时的格式
140939

按自己的格式输出

# date '+usr_time: $1:%M %P -hey'
usr_time: $1:16 下午 -hey

显示时间后跳行,再显示目前日期

date '+%T%n%D'

显示月份与日数

date '+%B %d'

显示日期与设定时间(12:34:56)

date --date '12:34:56'

9、login命令

Linux login命令用于登入系统。

login指令让用户登入系统,您亦可通过它的功能随时更换登入身份。在Slackware发行版中 ,您可在指令后面附加欲登入的用户名称,它会直接询问密码,等待用户输入。当/etc目录里含名称为nologin的文件时,系统只root帐号登入系统,其他用户一律不准登入。

语法

login

实例

使用新的身份登录系统

# login


10、shutdown命令

Linux shutdown命令可以用来进行关机程序,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown 也可以用来重开机。

使用权限:系统管理者。

语法

shutdown [-t seconds] [-rkhncfF] time [message]

参数说明

  • -t seconds : 设定在几秒钟之后进行关机程序
  • -k : 并不会真的关机,只是将警告讯息传送给所有只用者
  • -r : 关机后重新开机
  • -h : 关机后停机
  • -n : 不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机
  • -c : 取消目前已经进行中的关机动作
  • -f : 关机时,不做 fcsk 动作(检查 Linux 档系统)
  • -F : 关机时,强迫进行 fsck 动作
  • time : 设定关机的时间
  • message : 传送给所有使用者的警告讯息

实例

立即关机

# shutdown -h now

指定5分钟后关机

# shutdown +5 “System will shutdown after 5 minutes” //5分钟够关机并显示警告信息

11、sudo命令

Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。

使用权限:在 /etc/sudoers 中有出现的使用者。

语法

sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command

参数说明

  • -V 显示版本编号
  • -h 会显示版本编号及指令的使用方式说明
  • -l 显示出自己(执行 sudo 的使用者)的权限
  • -v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
  • -k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
  • -b 将要执行的指令放在背景执行
  • -p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
  • -u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
  • -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
  • -H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )
  • command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令

实例

sudo命令使用

$ sudo ls
[sudo] password for hnlinux: 
hnlinux is not in the sudoers file. This incident will be reported.

指定用户执行命令

# sudo -u userb ls -l


12、passwd命令

Linux passwd命令用来更改使用者的密码

语法

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

必要参数

  • -d 删除密码
  • -f 强制执行
  • -k 更新只能发送在过期之后
  • -l 停止账号使用
  • -S 显示密码信息
  • -u 启用已被停止的账户
  • -x 设置密码的有效期
  • -g 修改群组密码
  • -i 过期后停止用户账号

选择参数

  • --help 显示帮助信息
  • --version 显示版本信息

实例

修改用户密码

# passwd runoob  //设置runoob用户的密码
Enter new UNIX password:  //输入新密码,输入的密码无回显
Retype new UNIX password:  //确认密码
passwd: password updated successfully
# 

显示账号密码信息

# passwd -S runoob
runoob P 05/13/2010 0 99999 7 -1

删除用户密码

# passwd -d lx138 
passwd: password expiry information changed.
感悟:命令复杂,需要亲自实操,才可记忆深刻。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值