Linux常用命令

Posted shuangmu668

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令相关的知识,希望对你有一定的参考价值。

Linux常用命令

1.实验任务一:文件与目录操作

1.1 p w d命令

功能:显示当前所在目录(即工作目录)。

[root@lch ~]# pwd
/root

1.2 ls命令

功能:显示指定目录中的文件或子目录信息。当不指定文件或目录时,显示
当前工作目录中的文件或子目录信息。
命令常用选项如下:
-a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来。
-l :长格式显示,包含文件和目录的详细信息。
-R :连同子目录内容一起列出来。
说明:命令“ls –l”设置了别名:ll,即输入 ll 命令,执行的是 ls –l
命令。

[root@lch ~]# ls
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Pictures  Templates
Desktop          Downloads  Music                 Public    Videos
[root@lch ~]# ls -a
.                .bashrc  Documents             Music      .viminfo
..               .cache   Downloads             Pictures   .xauth7qfivt
anaconda-ks.cfg  .config  .esd_auth             Public     .xauthEQ5fTr
.bash_history    .cshrc   .ICEauthority         .tcshrc    .Xauthority
.bash_logout     .dbus    initial-setup-ks.cfg  Templates
.bash_profile    Desktop  .local                Videos
[root@lch ~]# ls -R
.:
anaconda-ks.cfg  Documents  initial-setup-ks.cfg  Pictures  Templates
Desktop          Downloads  Music                 Public    Videos

./Desktop:

./Documents:

./Downloads:

./Music:

./Pictures:

./Public:

./Templates:

./Videos:
[root@lch ~]# ls -l
total 8
-rw-------. 1 root root 2042 Mar  8  2022 anaconda-ks.cfg
drwxr-xr-x. 2 root root    6 Apr 12  2022 Desktop
drwxr-xr-x. 2 root root    6 Apr 12  2022 Documents
drwxr-xr-x. 2 root root    6 Apr 12  2022 Downloads
-rw-r--r--. 1 root root 2135 Mar 14  2022 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 Apr 12  2022 Music
drwxr-xr-x. 2 root root    6 Apr 12  2022 Pictures
drwxr-xr-x. 2 root root    6 Apr 12  2022 Public
drwxr-xr-x. 2 root root    6 Apr 12  2022 Templates
drwxr-xr-x. 2 root root    6 Apr 12  2022 Videos

1.3 c d命令

功能:用于切换当前用户所在的工作目录,其中路径可以是绝对路径也可
以是相对路径。

[root@lch /]# cd /dev
[root@lch dev]# 

1.4 mkdir 命令

功能:用于创建目录。创建目录前需保证当前用户对当前路径有修改的权限。 参数 -p 用于创建多级文件夹。

[root@lch mnt]# mkdir abc
[root@lch mnt]# ls
a  abc  wangjialin

1.5 rm 命令

功能:用于删除文件或目录,常用选项-r -f,-r 表示删除目录,也可以用 于删除文件,-f 表示强制删除,不需要确认。删除文件前需保证当前用户对当 前路径有修改的权限。

[root@lch mnt]# rm -rf abc
[root@lch mnt]# ls
a  wangjialin

1.6 cp 命令

功能:复制文件或目录。

[root@lch mnt]# cp /etc/profile ./
[root@lch mnt]# ls
a  profile  wangjialin

1.7 mv 命令

功能:移动文件或对其改名。常用选项-i -f -b,-i 表示若存在同名文件, 则向用户询问是否覆盖;-f 直接覆盖已有文件,不进行任何提示;-b 当文件 存在时,覆盖前为其创建一个备份。

[root@lch mnt]# mv a abc
[root@lch mnt]# ls
abc  profile  wangjialin

1.8 cat 命令

功能:查看文件内容。常用选项:-n 显示行号(空行也编号)。

[root@lch mnt]# cat -n profile
     1	# /etc/profile
     2	
     3	# System wide environment and startup programs, for login setup
     4	# Functions and aliases go in /etc/bashrc
     5	
     6	# It\'s NOT a good idea to change this file unless you know what you
     7	# are doing. It\'s much better to create a custom.sh shell script in
     8	# /etc/profile.d/ to make custom changes to your environment, as this
     9	# will prevent the need for merging in future updates.
    10	
    11	pathmunge () 
    12	    case ":$PATH:" in
    13	        *:"$1":*)
    14	            ;;
    15	        *)
    16	            if [ "$2" = "after" ] ; then

1.9 tar 命令

功能:为文件和目录创建档案。利用 tar 命令,可以把一大堆的文件和目录 全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网 络传输是非常有用的。该命令还可以反过来,将档案文件中的文件和目录释放出 来。常用选项:

-c 建立新的备份文件。

-C <目录> 切换工作目录,先进入指定目录再执行压缩/解压缩操作,可用 于仅压缩特定目录里的内容或解压缩到特定目录。

-x 从归档文件中提取文件。

-z 通过 gzip 指令压缩/解压缩文件,文件名为*.tar.gz。

-f<备份文件> 指定备份文件。

-v 显示命令执行过程。

[root@lch mnt]# tar -cvf all.tar *.log
profile_test.log
[root@lch mnt]# tar -zcvf log.tar.gz all.tar 

2.实验任务二:用户操作

2.1 useradd 命令

功能:创建新用户,该命令只能由 root 用户使用。

[root@lch mnt]# useradd mu

2.2 passwd 命令

功能:设置或修改指定用户的口令。

[root@lch mnt]# passwd mu
Changing password for user mu.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.

2.3 chown 命令

功能:将文件或目录的拥有者改为指定的用户或组,用户可以是用户名或者 用户 ID,组可以是组名或者组 ID,文件是以空格分开的要改变权限的文件列表, 支持通配符。选项“-R”表示对目前目录下的所有文件与子目录进行相同的拥有 者变更

[root@lch hadoop]# chown bin:bin log.tar.gz 
[root@lch hadoop]# ll
总用量 32
drwxrwxr-x. 3 hadoop hadoop 20 7 月 1 11:39 1+X
-rw-r--r--. 1 root root 10240 7 月 2 10:40 all.tar
-rw-rw-r--. 1 hadoop hadoop 11309 6 月 30 16:43 bigdata_work.java
-rw-r--r--. 1 bin bin 1322 7 月 2 10:41 log.tar.gz
-rw-r--r--. 1 root root 2922 7 月 2 10:30 profile_test.log
[root@lch hadoop]# chown -R teacher:teacher 
log.tar.gz
[root@lchhadoop]# ll
总用量 32
drwxrwxr-x. 3 hadoop hadoop 20 7 月 1 11:39 1+X
-rw-r--r--. 1 root root 10240 7 月 2 10:40 all.tar

2.4 chmod命令

功能:修改文件或目录的访问权限。选项“-R”表示递归设置指定目录下的 所有文件和目录的权限。 模式为文件或目录的权限表示,有三种表示方法。

(1)数字表示 用 3 个数字表示文件或目录的权限,第 1 个数字表示所有者的权限,第 2 个 数字表示与所有者同组用户的权限,第 3 个数字表示其他用户的权限。每类用户 都有 3 类权限:读、写、执行,对应的数字分别是 4、2、1。一个用户的权限数 字表示为三类权限的数字之和,如一个用户对 A 文件拥有读写权限,则这个用户 的权限数字为 6(4+2=6)。

​ 示例:

[root@lch mnt]# chmod 764 profile

(2)字符赋值 用字符 u 表示所有者,用字符 g 表示与所有者同组用户,用字符 o 表示其他 用户。用字符 r、w、x 分别表示读、写、执行权限。用等号“=”来给用户赋权 限。

​ 示例:

[root@lch mnt]# chmod u=rwx,g=rw,o=r profile

(3)字符加减权限 用字符 u 表示所有者,用字符 g 表示与所有者同组用户,用字符 o 表示其他 用户。用字符 r、w、x 分别表示读、写、执行权限。用加号“+”来给用户加权 限,加号“-”来给用户减权限。

​ 示例:

[root@lch mnt]# chmod u-x,g-w,o-w profile

2.5 su命令

功能:将当前操作员的身份切换到指定用户。如果使用选项“-”,则用户切 换后使用新用户的环境变量,否则环境变量不变。

[root@lch mnt]# su mu
[mu@server mnt]$

3.实验任务三:文本操作

3.1命令模式

用户刚刚启动 vi/vim,便进入了命令模式。
此状态下敲击键盘动作会被 vi 识别为命令,而非输入字符。
以下是常用的 几个命令:
i 切换到输入模式,以输入字符。
x 删除当前光标所在处的字符。
: 切换到末行模式,用以在最底一行输入命令。

3.2输入模式

在输入模式下可以对文件执行写操作,编写完成后按 Esc 键即可返回命令 模式。

3.3末行模式

如果要保存、查找或者替换一些内容等,就需要进入末行模式。
以下是常用 的几个命令:
Set nu:每一行显示行号
r 文件名:读取指定的文件。
w 文件名:将编辑内容保存到指定的文件内。
q:退出 vi
wq:保存文件并退出 vi
q!:强制退出 vi,不管是否保存文档内容。

4.实验任务四:系统操作

4.1 clear命令

功能:清除屏幕。实质上只是让终端显示页向后翻了一页,如果向上滚动屏 幕还可以看到之前的操作信息。

[mu@lch mnt]$ clear

4.2 hostname命令

功能:用于显示和设置系统的主机名称。在使用 hostname 命令设置主机名 后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机名。如 果需要永久修改主机名,需要同时修改/etc/hostname 的相关内容。常用选项: -a 显示主机别名,-i 显示主机的 ip 地址。

[root@lch mnt]# hostname nihao

4.3 hostnamectl 命令

功能:显示当前主机的名称和系统版本。

格式 2:hostnamectl set-hostname

后面还要加上:bash 使它生效。

功能:永久设置当前主机的名称

示例:

[root@lch mnt]# hostnamectl set-hostname nihao
[root@lch mnt]# bash
[root@nihao mnt]# 

4.4 IP命令

功能:对网络设备(网卡)进行操作,选项 add、delete、show、set 分别对 应增加、删除、查看和设置网络设备。

[root@nihao mnt]# ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 00:0c:29:5d:5b:9b brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff
[root@nihao mnt]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:5d:5b:9b brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.10/24 brd 192.168.10.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::94c6:e569:d46c:3d16/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff

格式 2:ip address <命令选项> dev <设备名>

功能:对网卡的网络协议地址(IPv4/IPv6)进行操作,选项 add、change、 del、show 分别对应增加、修改、删除、查看 IP 地址。

[root@nihao mnt]# ip address show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:5d:5b:9b brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.10/24 brd 192.168.10.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::94c6:e569:d46c:3d16/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:0d:79:b3 brd ff:ff:ff:ff:ff:ff

4.5 systemctl命令

功能:管理系统中的服务,“.service”表示管理的服务均包含了一个 以 .service 结尾的文件,存放于 /lib/systemd/目录中,可以省略。命令选项 有 start、restart、reload、stop、status,分别对应服务的启动、重启、重新 加载、停止和显示状态。另外选项 enable 表示开机时启动,disable 表示撤销 开机启动。

#启动网络服务
[root@nihao mnt]# systemctl start network
#关闭防火墙,注意 CentOS 7 的防火墙服务名称改为 firewalld
[root@nihao mnt]# systemctl stop firewalld
#查看 ssh 服务的状态
[root@nihao mnt]# systemctl status sshd
#设置 ssh 服务开机启动
[root@nihao mnt]# systemctl enable sshd

4.6 reboot命令

功能:用于重新启动计算机,但是机器重启必须要 root 用户才有权限。

[root@nihao mnt]# reboot

4.7 power off命令

功能:用来关闭计算机操作系统并且切断系统电源。如果确认系统中已经没 有用户存在且所有数据都已保存,需要立即关闭系统,可以使用 power off 命令。

[root@nihao mnt]# poweroff

4.8 export命令

功能:用于将 Shell 变量输出为环境变量,或者将 Shell 函数输出为环境变 第 1 章 Linux 操作系统的使用 10 量。一个变量创建时,它不会自动地为在它之后创建的 Shell 进程所知,而命令 export 可以向后面的 Shell 传递变量的值。当一个 Shell 脚本调用并执行时, 它不会自动得到父脚本(调用者)里定义的变量的访问权,除非这些变量已经被 显式地设置为可用。export 命令可以用于传递一个或多个变量的值到任何子脚 本。

常用选项:

-f 代表[变量名称]中为函数名称。

-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执 行环境中。

-p 列出所有的 Shell 赋予程序的环境变量。

#列出当前所有的环境变量
[root@nihao mnt]# export -p
declare -x DISPLAY="localhost:10.0"
declare -x HISTCONTROL="ignoredups"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="server"
declare -x LANG="en_US.UTF-8"
declare -x LESSOPEN="||/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="mu"
declare -x LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin"
declare -x PWD="/mnt"
declare -x SELINUX_LEVEL_REQUESTED=""
declare -x SELINUX_ROLE_REQUESTED=""
declare -x SELINUX_USE_CURRENT_RANGE=""
declare -x SHELL="/bin/bash"
declare -x SHLVL="4"
declare -x SSH_CLIENT="192.168.10.1 53305 22"
declare -x SSH_CONNECTION="192.168.10.1 53305 192.168.10.10 22"
declare -x SSH_TTY="/dev/pts/1"
declare -x TERM="xterm"
declare -x USER="mu"
declare -x XDG_RUNTIME_DIR="/run/user/0"
declare -x XDG_SESSION_ID="2"
#定义环境变量 MYENV
[root@nihao mnt]# export MYENV 
#定义环境变量,并赋值 MYENV=7
[root@nihao mnt]# export MYENV=7

4.9 echo命令

功能:用于在终端设备上输出字符串或变量提取后的值。一般使用在变量前 加上$符号的方式提取出变量的值,例如:$PATH,然后再用 echo 命令予以输出。

#输出一段字符串 LinuxCool.com
[root@nihao mnt]# echo "LinuxCool.com"
LinuxCool.com
#输出变量 PATH 值
[root@nihao mnt]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

4.10 source命令

功能:用于重新执行刚修改的初始化文件,使之立即生效,而不必注销用户, 重新登录。

#读取和执行~/.bash_profile 文件
[root@nihao mnt]# source ~/.bash_profile

以上是关于Linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章

linux常用命令多少个

Linux文本操作常用命令

Linux部署项目常用命令

linux系统基础常用命令

Linux常用命令

Linux常用命令都有哪些?