Linux入门到精通之Linux常用命令
小职 2021-06-23 来源 :「WINNER_QIUQIU」原文链接:https://blog.csdn.net/WINNER_Q 阅读 857 评论 0

摘要:本文主要介绍了Linux入门到精通之Linux常用命令,通过具体的内容向大家展现,希望对大家Linux开发的学习有所帮助。

本文主要介绍了Linux入门到精通之Linux常用命令,通过具体的内容向大家展现,希望对大家Linux开发的学习有所帮助。

Linux入门到精通之Linux常用命令

首先说明:

Linux命令区分大小写。

按TAB键可以自动补全命令。

【】内为可选项,{}内为必选项。

echo “hello world” 输出hello word。


常用目录

boot 存放启动文件

dev 存放设备文件

etc  存放配置文件

home 普通用户家目录,以/home/\$username的方式存放

media 移动存储自动挂载目录,以/media/\$device_name的方式来存放

mnt 手动挂载目录

opt 三方软件安装目录

proc 内存系统文件

root 管理员家目录

run 里面的东西是系统运行时需要的,不能随便删除。但是重启的时候应该抛弃,下次系统运行时自动生成。

srv 服务相关数据

sys 系统文件

tmp 临时文件夹

usr 存放库文件、文档、命令、用户数据等

var 日志存放

lib 库文件


Linux命令

命令【命令选项】【参数】


注:使用【】为可选项,{}为必选项


ls:查看文件夹的东西

ls -a/tmp 等价于 ls --all/tmp


注:简写前用-,全称用–。其中/tmp为参数(/为根目录)


type命令

使用type命令来区分命令是内部还是外部命令:


【root@www~】# type type

type 是shell内嵌


注:说明type是内部命令


【root@www~】# type clear

clear 是/user/bin/clear


注:说明clear是外部命令


命令存在哪里


【root@www~】#echo$PATH

/usr/local/sbin

/usr/local/bin

/usr/sbin

/usr/bin


区别:bin的命令任何人都可以使用,sbin的命令称为特权命令,只能管理员使用。


linux基本命令

清屏命令:clear  快捷键:Ctrl+l

帮助命令:man

进入文件夹命令:cd

列出当前目录内容命令:ls【-a -l -d】

其中:ls -l 为列出详细信息

  ls -a 为列出所有信息

  ls -i 为列出结点

显示主机名:hostname

显示日期时间:date【-s %F】

显示日历:cal

计算器:bc

重启命令:reboot 或 shutdown -r 或 init 6(后两种仅为管理员可用操作)

注销命令:logout

关机命令:halt 或 shutdown -h 或 init 0(后两种仅为管理员可用操作)

显示当前操作系统和机器的信息:uname

显示当前路径:pwd


ls -a /tmp:列出/tmp的详细信息


如下所示:

Linux入门到精通之Linux常用命令

注:其中,黑色字体为文件,蓝色字体为文件夹,绿色字体为可执行文件,蓝色字体前带‘.’的为隐藏文件。


man帮助命令

帮助命令 man命令后面可以加一个数字参数,表示具体的范围定位:


数字“1”表示用户命令

数字“2”表示系统调用

数字“3”表示C语言库函数

数字“4”表示设备或特殊文件

数字“5”表示文件格式和规则

数字“6”表示游戏及其他

数字“7”表示宏、包及其他杂项

数字“8”表示系统管理员相关的命令


ls列出当前目录内容命令


ls -F 文件夹后加/显示

ls -x 按水平对齐方式列出档案

ls -m 以“,”隔开档案

ls -a 按时间排序档案

ls -l 显示详细信息,此命令等同于ll

ls -d 显示目录而不是其内容

ls -h 以K、M、B的形式进行显示

ls -R


cal日历


example

cal 05 2005    显示2005年5月

cal 2018    显示2018年的12个月


bc计算器

浮点运算 scale 指定小数点位数


echo “scale=2;100/3”|bc


uname显示当前操作系统和机器的信息


#uname -a 显示所有信息

#uname -p 显示处理器类型

#uname -m 显示机器硬件信息

#uname -r 显示内核版本


注:如何查看你的Linux是否为稳定版

【root@www~】#uname -r

3 主版本号

10 次版本号 偶数为稳定版 奇数为开发版

0 派生版本号

693 修改次数


文件的创建及删除

新建文件和修改文件或文件的时间戳

命令语法:


touch 【选项】【文件名】


命令选项:


-a 只修改文件的access(访问时间)

-c 或--no-create 不创建不存在的文件

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

-m 修改modify时间,而不修改access(访问)时间

-r file使用指定file文件的时间戳(access,modify)更新文件的时间戳(access,modify)

-t 将时间修改为参数指定的日期,如:10011150代表10月8日11点55分


注:三个时间戳如下:

atime:访问时间

mtime:修改文件内容后时间才会变化

ctime:修改时间节点后时间会变化,例如修改文件名字

删除文件

命令语法:


rm 【options】 name


命令选项:


-i 删除前逐一询问确认

-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认

-r 将目录及以下档案亦逐一删除(递归删除)


文件改名

命令语法:


mv old_file new_file


文件查看


- 普通文件

d 目录

l 链接文件

b 设备文件

c 字符设备

s 套接字文件

p 管道文件


Linux文件颜色的意义

绿色文件:可执行文件,可执行的程序

红色文件:压缩文件或包文件

蓝色文件:目录

白色文件:一般性文件,如文本文件、配置文件、源码文件等

浅蓝色文件:链接文件,主要是使用ln命令建立的文件

红色闪烁:表示链接的文件有问题

黄色:表示设备文件

灰色:表示其他文件

粉色:套接字文件


文件移动和拷贝

文件移动

命令语法:


mv 【选项】 源文件或目录  目标文件或目录


命令选项:


-b 若需覆盖文件,则覆盖前先行备份

-i 若指定目录已有同名文件,则询问是否覆盖旧文件

-f force强制的意思,如果目标文件已经存在,不会询问而直接覆盖

-u 若目标文件已经存在,且source比较新,才会更新(update)


拓展:mv src dsT

改名 dsT是一个文件夹的时候  执行是移动

dsT不是一个文件夹的时候  执行改名


文件拷贝

命令语法:


cp 【options】 源文件或目录  目标目录


命令选项:


-a 此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容

-d 复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式

-f 覆盖已经存在的目标文件而不给出提示

-i 在覆盖目标之前给出提示,要求用户确认是否覆盖,回答y时目标文件将会被覆盖

-p 除复制文件的内容外,还把修改时间和访问权限也复制到新文件中

-r 若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件

-l 不复制文件,只是生成链接文件


查看文件内容

cat命令

用于连接文件并打印到标准输出设备上。

命令语法:


cat 【选项列表】【文件列表】


命令选项:


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

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

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

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

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

-T 或 --show-ends 将TAB字符显示为^l

-A 或 --show-all 等价于 -vET

-e 等价于 -vE

-t 等价于 -vT


输出文件开始部分

命令语法:


head 【OPTION】【FILE】


命令选项:


-c,--bytes=SIZE 打印起始的SIZE字节

-n,--lines=NUMBER 显示起始的NUMBER行,而非默认的起始10行

-q,--quiet,--silent 从不显示给出文件名的首部

-v,--verbose 总是显示给出文件名的首部

--help 显示帮助后退出

--version 输出版本信息后退出


输出文件尾部部分

命令语法:


tail 【OPTION】【FILE】


命令选项:


-f 循环读取

-v 显示详细的处理信息

-c<数目> 显示的字节数

-n<行数> 显示文件的尾部n行内容

tail -n +5 从第5行开始打到最后


文件夹

文件夹管理


mkdir 新建文件夹

rmdir 删除空文件夹

rm -r 删除不为空的文件夹(递归删除)

mv 文件夹改名

ls 文件夹查看


建立目录

命令语法:


mkdir 【选项】 目录


命令选项:


-v 显示信息

-p 递归创建


删除空目录

命令语法:


rmdir 【options】directory


命令选项:


-p 递归删除空目录


文本界面文本编辑器vim

命令语法:


vim 文件名


四种模式

进入命令模式(默认):可以输入命令来进行文件存盘、移动光标、删除字符、撤销命令和重复命令

插入模式:删除字符、插入字符

末行模式:进行文件保存、退出vim、进行查找和替换等操作

替换模式:替换字符

Linux入门到精通之Linux常用命令

光标的移动


h j k l 对应左下上右

home 光标移到本行开头

end 光标移到本行末尾

G 光标移到末尾

gg 光标移到开头

w 光标移动一个单词

ZZ 保存并退出

page up 上翻一页

page down 下翻一页


文本修改


yy 复制一行

nyy 复制n行

p 粘贴到一行后

P 粘贴到一行前

x 向后删除字符

X 向前删除字符

dd 删除一行

ndd 删除n行

dw 删除一个单词

u 撤销上一步操作


文本查找


/查找内容


注:若查找内容中本身包含 / / /,要使用转义字符$$对其进行转义

模式切换


从命令行模式进入输入模式

a 从光标所在位置后开始输入资料,光标后的资料随增加的资料向后移动

A 从光标所在行最后面的位置开始输入资料

插入

i 从光标所在位置前开始插入资料,光标后的资料随新增资料向后移动

I 从光标所在行的第一个非空白字符前面开始插入资料

开始

o 在光标所在行下新增一行并进入输入模式

O 在光标所在行上方新增一行并进入输入模式

退出输入模式

esc


末行模式


在命令模式下输入":"即可进入末行模式。在末行模式下,可以进行保存文件、退出vim、进行查找和替换等操作。


退出vim


:q 退出

:q! 强制退出不保存

:w 保存不退出

:wq 保存并退出


替换


:s/old/new 只替换光标所在行的第一个old string

:%s/old/new 替换全文所有行的第一个old string

:s/old/new/g 将本行(光标)的所有old string替换为new string g global n代表一个行号

:%s/old/new/g 将文本中所有的old string替换为new string

:1,2s/old/new/g 替换1到2行中的old string替换为new string

:.,2s/old/new/g .代表光标行到第二行中的old string替换为new string

:2,$s/old/new/g 2到最后一行中的old string替换为new string


其他命令


:set nu 显示行号

:set nonu 不显示行号

:!command 在vim编辑器中执行一条命令不需要退出当前的编辑


注:当同时编辑多个文件时,因为同一时间只能显示一个文件夹,所以在vi中切换打开的文件可以使用N或n。


:n 切换下一个文件

:N 切换上一个文件


相关配置文件


~/.viminfo 存储vim的历史编辑命令

~/.vimrc 个人定制文件


注:个人定制文件只能针对一个用户,文件带行号


用户和组

Linux用户

普通用户:UID大于999;权限较小,可以登录;只能用bin目录下的命令

系统用户:UID小于1000;系统服务管理用户,一般不允许登录系统

管理员:root

组是一个用户容器,用来装用户,没有其他意义

默认情况下,新建用户的同时,系统会创建一个同名组装载该用户

在linux中的每个用户必须属于一个组,不能独立与组外

在linux中每个文件有所有者、所在组、其他组的概念

新建用户

命令语法:


useradd 【选项】用户名

其中用户名不能超过32个字符


命令选项:


-c,--comment 描述

-d,--home HOME_DIR家目录

-e,--expiredate EXPIRE_DATE过期时间

-f,--inactive INACTIVE是否启用过期机制

-g,--gid GROUP指定组ID号

-G,--groups GROUP1[,GROUP2,...[,GROUPN]]附加组

-m,--create-home 建立家目录

-M 不建立家目录

-N,--no-user-group 不指定用户同名组

-r,--system 指定该账号是系统账号

-s,--shell SHELL指定登录shell

-u,--uid UID指定用户ID号

-U,--user-group 指定用户创建用户同名组

-o 创建用户是可以uid重复


eg:新建用户user01-user04

user01 UID 1500 附属于root组 家目录 /tmp/user01 登录shell/bin/bash


useradd -u 1500 -G root -d /tmp/user01 -s /bin/bash user01


user02系统用户,不要家目录,不允许交互登录


useradd -r -M -s /bin/nologin user02


user03 启用过期,过期时间为2019-04-01


useradd -f 3 -e 2019-04-01 user03

注:过期缓冲期为3天,即到2019-04-04彻底过期不允许登录


user04 UID为0,GID为0


useradd -o -u 0 -g 0 user04


将用户账号切换到user01


su -user01


密码设置

命令语法:


passwd 【选项】用户名

注:以上为管理员给用户设定密码

用户为自己设定密码:passwd即可


命令选项:


-l 锁定用户

-u 解锁用户

-d 删除账户的密码

-S 给定账户的密码状态信息


删除用户

命令语法:


userdel 【选项】用户名


命令选项:


-f,--force

-r,--remove 删除主目录及邮箱


修改用户账户

命令语法:


usermod 【选项】用户名


命令选项:


-a,--append

-L,--lock

-U,--unlock

-m,--move-home with -d


eg: usermod -G root -a user02


更改用户密码过期信息

命令语法:


chage 【选项】用户名```


命令选项:


```powershell

-h,--help display this help message and exit

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

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

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

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

-d 上一次更改的日期

-I 停滞时期。如果一个密码已过期这些天,此账号将不可用

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


用户查看

命令语法:


/etc/passwd

显示分别为:【用户名】:【密码】:【UID】:【GID】:【身份描述】:【主目录】:【登录shell】


/etc/shadow  影子文件

用户名:这是用户登录系统时使用的名字,在系统中唯一

口令:此字段存放加密口令

最后一次修改的时间:标识从某一时刻起到用户最后一次修改口令的天数

最小时间间隔:两次修改口令之间的最小天数

最大时间间隔:口令保持有效的最多天数,即多少天后必须修改口令

警告时间:从系统开始警告到口令正式失效的天数

不活动时间:口令过期多少天后,该账号被禁用

失效时间:指示口令失效的绝对天数(从1970年1月1日开始计算)

标志:未使用


组创建

命令语法:


groupadd 【选项】组名


命令选项:


-g,--gid GID 指定GID

-r,--system 创建一个系统组

-o,--non-unique 此选项允许添加一个使用非唯一GID的组

注:组名最长为32个字节


eg:创建一个组,组名为admin


groupadd admin


eg:创建一个组,组名为ayitula,GID为4433


groupadd -g 4433 ayitula


查看组信息


vim /etc/group

小于1000为系统组,大于1000为普通用户组


修改组信息

命令语法:


groupmod 【选项】组名


命令选项:


-g,--gid GID

-n,--new-name NEW_GROUP 给组改名,如groupmod test -n test1

-o,--non-unique


eg:将user01添加到ayitula组


usermod -G ayitula user01


删除组

命令语法:


groupdel 【选项】组名


组配置文件


/etc/group

显示分别为:【组名】:【密码域】:【GID】:【组员列表】

/etc/gshadow

显示分别为:【组名】:【口令】:【组管理者】:【组内用户列表】


组密码与组切换


gpasswd命令,为组设置密码

-a,-add USER 将用户添加到组里

-d,--delete USER 将用户从组中移除

-r,--remove-password 去除组密码

-R,--restrict 限制非该组成员的用户登录该组

-M,--members USER 列出该组时间

-A,--administrators ADMIN 列出该组的管理员

newgrp命令,用户临时切换组身份

vim /etc/gshadow 查看密码

gpasswd -A user04 ayitula 将user04作为管理员,一个组中的管理员只能有一个


组密码的作用:可以临时切换到其他组

相关配置文件


/etc/passwd 用户账户信息

/etc/shadow 安全用户账户信息

/etc/group 组账户信息

/etc/gshadow 安全组账户信息

/etc/default/useradd 账户创建的默认值

/etc/skel/ 包含默认文件的目录

/etc/login.defs shadow密码套件配置


我是小职,记得找我

✅ 解锁高薪工作

✅ 免费获取基础课程·答疑解惑·职业测评

Linux入门到精通之Linux常用命令

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程