为什么root下不能使用passwd命令_3.2 基本命令操作《LINUX-centos7-操作系统入门到精通》...

c6f3aa06e5a6730a61941c9b10bd8318.png

命令格式:在Linux下命令通常有三部分组成。

命令(command) 选项 (options) 参数(arguments)

第一部分:命令本身,在命令提示符下输入的必须是命令,或是个可执行程序的路径、或是个脚本的路径、名字。

第二部分:命令选项,命令本身与命令选项必须用空格隔开,选项的作用,用于修改命令的执行方式以及特性,选项可以同时使用多个,而且选项有长和短之分,有些选项是可带有参数的。

短选项:通常用一个 - 和一个字母来引导,如果在命令加入多个短选项时,也可以用一个 - 把多个选项组合在一起引导,组合引导选项与选项之间不需要隔开,也可以每个短选项都单独用一个 - 引导,但需要空格隔开。

长选项:通常用两个 -- 后面跟上的选项就是以单词格式作为选项引导,长选项通常不能组合,必须要分开引导。

第三部分:参数,命令的作用对象,生效在什么地方,对不同的命令来言,是否能接受参数、接受的参数个数、等等都是各不相同的。

3.2.1 基本命令之 ls

作用:列出指定路径或当前目录下的子目录和文件。

语法:ls 目录/文件 ,ls 不加参数时,只列出当前目录的子目录和文件。

常用选项:

-h :做单位转换

-a :all 显示包括隐藏文件目录,Linux下隐藏文件以 . 开头,在每个目录下都有 . 和 .. 这两个隐藏目录

-l :以长格式查看文件

-A : 显示包括隐藏文件和目录,但不显示. 和 ..

-d :显示目录自身属性

-S :以文件的大小进行排序

-i :显示文件的索引号

-r :逆序显示文件,默认是顺序显示文件排列

-R :递归(recursive)显示,此方式显示比较消耗资源,比如一个目录下有百个目录而每个目录下都有上百层,上万个文件,因为将要显示的数据都是先调入内存中,此时用这种方式显示 ,所以内存的大量缓存会用于显示目录

命令后面不加任何选项:

[root@xuegod63 ~]# ls #列出目录中的内容。

anaconda-ks.cfg initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面

1. -l 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等,长列表。

[root@xuegod63 ~]# ls -l

总用量 8

-rw-------. 1 root root 1680 9月 19 12:16 anaconda-ks.cfg

-rw-r--r--. 1 root root 1728 9月 19 12:55 initial-setup-ks.cfg

drwxr-xr-x. 2 root root 6 9月 19 13:05 公共

drwxr-xr-x. 2 root root 6 9月 19 13:05 模板

drwxr-xr-x. 2 root root 6 9月 19 13:05 视频

2. 文件属性每段代表的含义,如图 3-3 所示。

78981f68bc58fe113d00337b43c22145.png

图 3-3 文件属性分解图

(1) 第一个字符文件类型中:

1) d:目录文件

2) l:链接文件

3) b:块设备文件

4) c:字符设备文件

5) p:管道文件

6) -: 表示普通文件

(2) Linux系统中不同的颜色代表了不同的文件类型,详解如表 3-1 所示。

颜 色

代表内容

举 例

蓝色

目录

/etc

黑色

文件

/etc/passwd

浅蓝色

链接

/etc/grub2.cfg

红色

压缩包

boot.tar.gz

绿色

可执行文件

/etc/init.d/network

黑底黄字

设备文件

/dev/sda

2e5790c795b32641b82bd7c7f9743702.png

表 3-1 颜色代表文件类型详解图

3. -a 列出目录下所有的文件,包括以“.“开头的隐藏文件(Linux下隐藏文件是以 . 开头的,如果存在2个点代表存在着父目录,1个点表示当前目录)

[root@xuegod63 ~]# ls -a

. .. .bash_profile .dbus .mozilla 视频 桌面

4. -d 查看目录(不查看里面的内容,一般常用是与-l参数同时使用,单独使用-d参数意义不大)。

[root@xuegod63 ~]# ls -ld /root/

dr-xr-x---. 15 root root 4096 11月 15 21:37 /root/

5. -S 以文件的大小进行排序

[root@xuegod63 ~]# ls -lS /root/

总用量 8

-rw-r--r--. 1 root root 1728 9月 19 12:55 initial-setup-ks.cfg

-rw-------. 1 root root 1680 9月 19 12:16 anaconda-ks.cfg

ls -l 和ll 这两个命令是等价的。

[root@xuegod63 ~]# ll /etc/passwd

-rw-r--r--. 1 root root 2053 9月 19 12:57 /etc/passwd

[root@xuegod63 ~]# ls -l /etc/passwd

-rw-r--r--. 1 root root 2053 9月 19 12:57 /etc/passwd

[root@xuegod63 ~]# type ll

ll 是 `ls -l --color=auto' 的别名。

3.2.2 别名的使用

命令别名即是把一个命令名称改成另一个名称,在使用时,可以使用命令的本身,也可以使用命令的别名。

定义一个命令的别名时,使用alias 自定义别名='系统已有命令' 即可定义命令别名,命令可以带选项、参数,如果命令和选项、参数之间有空格,用‘ ’单引号引起。

定义别名是Shell的特性,所以只在当前终端生效,用户退出当前终端时,所定义的别名则失效,就算同一个用户再打开一个Shell也是不会生效,也就说在Shell中定义的别名仅在当前Shell生命周期中有效,别名的有效范围为当前Shell进程,需要永久生效则需要修改Bash相关的配置文件实现。

当前用户生效的别名,仅在当前用户下使用,全局则可以系统中所有用户都可使用。

1. 定义命令别名

命令alias,作用:用于定义命令别名。

命令使用格式:命令 自定义别名='系统已有命令' #此方式为临时定义别名。

[root@xuegod63 ~]# alias vimens33='vim /etc/sysconfig/network-scripts/ifcfg-ens33'

[root@xuegod63 ~]# vimens33 #使用已定义好的别名。

在使用命令的别名时,实现上是使用命令别名对应的命令,在执行别名vimens33时,实际上系统是在执行vim /etc/sysconfig/network-scripts/ifcfg-ens33 。

2. 删除别名

命令unalias,作用:用于取消/删除命令别名。

命令使用格式:unalias 命令别名

[root@xuegod63 ~]# unalias vimens33 #unalias 命令别名,即可删除别名。

3. 设置别名永久生效(分为两种生效范围)

(1) 设置当前用户别名永久生效(生效范围仅当前用户使用有效):

[root@xuegod63 ~]# vim /root/.bashrc #插入以一下内容:

alias vimenss33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"

[root@xuegod63 ~]# source /root/.bashrc #重新加载 /root/.bashrc文件。

[root@xuegod63 ~]# vimenss33

(2) 设置全局使用别名永久生效(生效范围系统所有用户使用有效)

[root@xuegod63 ~]# vim /etc/bashrc #在文件最后插入。

alias vimenss33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"

[root@xuegod63 ~]# su - mk #切换到普通用户。

上一次登录:四 11月 16 10:22:03 CST 2017pts/1 上

[mk@xuegod63 ~]$ vimenss33 #使用普通用户执行定义好的别名。

TYPE=Ethernet #网络类型

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=static

DEFROUTE=yes

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

NAME=ens33 #网卡名。

UUID=5e7053bf-1f1b-4335-a5b5-3865225c24d6 #网卡UUID号,全球唯一的。

DEVICE=ens33 #设备名字,在内核中识别的名字。

ONBOOT=yes #启用该设备,如果为no,表示不启用此网络设备。

IPADDR=192.168.1.63 #IP地址。

NETWORK=255.255.255.0 #子网掩码。

GATEWAY=192.168.1.1 #默认网关。

总结:

别名的永久生效,分别全局定义和个人定义修改的配置文件。

全局定义:

修改 /etc/bashrc ,在文件中加入 alias cls=clear 即可。

# source /etc/bashrc #重新加载该文件。

个人定义:

修改 ~/.bashrc ,在文件中加入 alias cls=clear 即可,~表示当前用户家目录。

# source ~/.bashrc #重新加载该文件。

3.2.3 基本命令之 cd

作用:切换目录(change directory)

命令使用格式:cd [目录]

说明:直接输入cd表示回到当前用户的宿主(家)目录。

[root@xuegod63 ~]# cd /etc/sysconfig/network-scripts/ #切换目录。

[root@xuegod63 network-scripts]# cd #直接使用cd命令回到用户家目录。

[root@xuegod63 ~]#

[root@xuegod63 ~]# cd ~ #使用cd~和直接使用cd是同样意义。

cd .. 表示返回到上级目录位置,也就是父目录。

cd . 表示进入到当前用户所在的目录。

[root@xuegod63 ~]# pwd #查看当前处理哪一个工作目录。

/root

[root@xuegod63 ~]# cd .. #返回上一级目录。

[root@xuegod63 /]# pwd #查看当前处理哪一个工作目录。

/

[root@xuegod63 /]# cd . #切换到当前目录。

[root@xuegod63 /]#

[root@xuegod63 ~]# cd - #切换到上一次切换的目录,在上次所处的目录切换到当前目录之间来回切换。

例3.4:

[root@xuegod63 /]# cd /etc/sysconfig/network-scripts/

[root@xuegod63 network-scripts]# cd - #使用cd- 直接返回到上次切换至此的目录/。

3.2.4 历史命令之history

用于查看所执行过的命令和管理。

命令:history

命令使用格式:history [选项]

4个快速查找Linux历史命令的技巧:

(1) : 光标上下键
(2) : ctrl+r -》输入某条命令的关键字-》找出来对应的命令,按右光标键
(3) : !数字 #执行历史命令中第N条命令
(4) : !字符串 #搜索历史命令中最近一个以xxxx字符开头的命令,例如!Vim

3.2.5 Linux下快捷键

在Linux下的快捷键都是使用Ctrl+下面的单词, ^表示Ctrl。

1. ^C

终止前台运行的程序 , 如:ping http://g.cn 后,想停止按下Ctrl+C。


2. ^D

退出 等价exit。


3. ^L

清屏与clear命令功能一样。

4. ^R

搜索历史命令,可以利用好关键词。

5. tab键

补全命令使用tab键,Tab只能补全命令和文件。


6. !$ 引用上一个命令的最后一个参数,等价于

[root@xuegod63 network-scripts]# cat /etc/hosts

[root@xuegod63 network-scripts]# vim !$ #相当于执行: vim /etc/hosts


本文节选自学神IT教育原创书籍《LINUX-第一阶段-centos7-操作系统入门到精通》,全套书共四册1600页,跟着学神学Linux,祝你早日成为大牛!

想要全套印刷书籍,可以关注我们,经常会举办赠书活动。

【点击】MK老师,获取免费视频学习

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值