Linux命令的基本使用

3 Linux命令的基本使用

3.1 终端
  1. 查看当前终端
  tty

tty

伪终端 pts/0

  1. 切换终端
 ctrl+alt+F1-F7

 ctrl+alt+F1-F7

3.2 命令
3.2.1 定义

二进制可执行文件

3.2.2 分类
  1. 外部命令

  2. 内部命令 shell内建

  man cd 查看所有shell内建命令

man cd

  1. COMMAND 查看命令的类型
 type

type1

type2

3.2.3 用法
  1. 长选项 --STRING
  2. 短选项 -字母

选项

3.2.4 举例
选项说明
-aall,目录所有文件包含隐藏文件
-llong,长格式显示文件属性
-ddirectory,显示目录本身
-hhuman-readable,人类可读的单位

ls

3.3 工作目录
  1. pwd,print working directory,显示工作目录
  2. cd, change directory,切换工作目录

pwd

3.4 用户管理
  1. 创建用户
 useradd 用户名

uesradd

  1. 删除用户
 userdel 用户名

userdel

  1. 更新密码
passwd 用户名

passwd

  1. 切换用户
 su - 用户名

su

3.5 文件管理
  1. 创建目录
mkdir 目录路径   

mkdir

  1. 查看文本文件
  cat 文件

先创建一个文件a

cat

给文件a添加内容(用vi编辑器加。。。。省略)

vi

选项说明
-b显示非空白行行号
-n显示所有行号
-T将【Tab】按键以 ^T 显示出来
-V显示出特殊字符
-E将结尾的断行字符$显示出来
–A相当于 –vET
 tac反向显示

tac

  1. 编辑文本文件 vim 文件(用不了) vi(i->进行编辑->Esc->:wq)

    先创建文件b

 touch b

touch

 vi b

vim暂时用不了,先用vi编辑吧(yum -y install vim)

vi1

显示内容

cat b

  1. 拷贝文件
 cp 文件名 新文件名

cp

  1. 删除文件
 rm - 文件名

rm

也可用rm-rf 文件名(谨慎使用)

  1. 移动文件
改名  mv 文件名 新文件名

mv

移动文件 mv 文件名 路径
3.6 网络管理
  1. 查看网卡信息
 ifconfig
  1. 查看网卡信息
ip addr show
3.7 快捷键
  1. TAB

命令和路径的补全

  1. CTRL+c

终止当前命令的执行

  1. clear,清屏 CTRL+l

  2. ahead CTRL+a

  3. end CTRL+e

3.8 常用命令
3.8.1 显示当前路径
 pwd  

​ print working directory

pwd

选项说明
-L–logical 显示运行环境的目录(当前目录),即使它包含链接
-P–physical 显示当前目录的实际物理地址,避免所有链接
3.8.2 切换路径
 cd 

change directory

​ cd . 切换到当前路径 = cd ./

​ cd …切换到上一层路径 =cd …/

选项说明
空白进入用户根目录
~进入用户根目录
/进入系统根目录

cd

3.8.3 字符输出 echo
 echo string

echo

3.8.4 显示内容
 ls  

​ list

参数说明
-a显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r将文件以相反次序显示(原定依英文字母次序)
-t将文件依建立时间之先后次序列出
-A同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)
-F在列出的文件名称后加一符号;例如可执行档则加 “*”, 目录则加 “/”
-R若目录下有文件,则以下之文件亦皆依序列出

ls
​ ls ./test2 查看当前目录的test2

​ ls …/test2查看上一层目录的test2

ls

3.8.5 挂载 mount
 mount  路径分区 路径
 fdisk-l 查看 或者用   df

mount

选项说明
-V显示程序版本
-h显示辅助讯息
-v显示较讯息,通常和 -f 用来除错
-a将 /etc/fstab 中定义的所有档案系统挂上
-F这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作
-f通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的过程。通常会和 -v 一起使用
-n一般而言,mount 在挂上后会在 /etc/mtab 中写入一笔资料。但在系统中没有可写入档案系统存在的情况下可以用这个选项取消这个动作
3.8.6 卸载 umount

umount

选项说明
-a卸除/etc/mtab中记录的所有文件系统
-h显示帮助
-n卸除时不要将信息存入/etc/mtab文件中
-v执行时显示详细的信息
-V显示版本信息
3.8.7 命令类型
 type

type

查看外部命令的执行路径 type-p

type -p

3.8.8 查找文件
 which

which

选项说明
-n<文件名长度>指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名
-p<文件名长度>与-n参数相同,但此处的<文件名长度>包括了文件的路径
-w指定输出时栏位的宽度
-V显示版本信息
3.8.9 创建目录
 mkdir  

​ make dir

选项说明
-m创建目录的时候同时设置文件的权限
-p如果上级目录没有创建,即创建输入路径上的所有目录

-m权限说明

  • 一个文件有三个权限: 读, 写,执行
  • 读写执行分别对应的数字为:4,2,1
  • 如果某用户只有读的权限没有写与执行的权限,所以对应的数字就为4了
  • 一个文件和文件夹所面对的用户有三种,所属用户,所属用户组,组外用户
  • 例 数字 777,即说明了所对应的三个组对应的拥有全部的权限
3.8.10 使用手册
 man 

​ manual

查看ls的使用手册

按q退出

3.8.11 init
级别说明
0停机(千万不能把initdefault 设置为0
1单用户模式
2多用户,没有 NFS
3完全多用户模式(标准的运行级)
4安全模式
5图形化(即图形界面)
6重新启动 (千万不要把initdefault 设置为6 )
3.8.12 shutdown
选项说明
-c取消已经在进行的shutdown指令内容
-h关机
-k发送警告信息给所有登录者
-r重启
 shutdown –h now  =init 0
 shutdown –r now  =init 6=reboot
3.8.13 命令历史
 history

history

选项说明
-c清空当前历史命令
-a将历史命令缓冲区中命令写入历史命令文件【/root/.bash_history】
-r将历史命令文件中的命令读入当前历史命令缓冲区
-w将当前历史命令缓冲区命令写入历史命令文件中【/root/.bash_history】
n打印最近的n条历史命令
3.8.14 文本查找
 grep
选项说明
-E开启扩展(Extend)的正则表达式
-i忽略大小写(ignore case)
-v反过来(invert),只打印没有匹配的,而匹配的反而不打印
-n显示行号
-w被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到
-o只显示被模式匹配到的字符串
–color将匹配到的内容以颜色高亮显示
-A n显示匹配到的字符串所在的行及其后n行,after
-B n显示匹配到的字符串所在的行及其前n行,before
-C n显示匹配到的字符串所在的行及其前后各n行,context

grep -c

 fgrep -c

fgrep

3.8.15 文本编辑
 sed

(流编辑器)

  1. 只打印n行

    只打印第三行

    只打印第四行

    #sed -n '3p' /tmp/b
    #sed -n '4p' /tmp/b
    

sed

  1. 打印三到四行

    #sed -n '3,4p' /tmp/b
    

sed

3.8.16 文本分析
awk
  1. 仅取出前五行

    仅显示最近登录的五个账号

    #last -n 5
    #last -n 5 | awk  '{print $1}'
    

last

  1. 只是显示/etc/passwd的账户

    #cat /etc/passwd |awk  -F ':'  '{print $1}' 
    

cat

  1. 只是显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以tab键分割

     #cat /etc/passwd |awk  -F ':'  '{print $1"\t"$7}'
    

cat

  1. 搜索/etc/passwd有root关键字的所有行

    #awk -F: '/root/' /etc/passwd
    

awk

  1. 使用自定义变量统计/etc/passwd的账户人数
 awk '{count++;print $0;} END{print "user count is ", count}' /etc/passwd

count 为自定义变量

awk

 awk 'BEGIN {count=0;print "[start]user count is ", count} {count=count+1;print $0;} END{print "[end]user count is ", count}' /etc/passwd

初始化count=0;

awk

  1. 显示
 awk -F ':' 'BEGIN {count=0;} {name[count] = $1;count++;}; END{for (i = 0; i < NR; i++) print i, name[i]}' /etc/passwd

建立数组
使用for循环遍历数组

awk

  1. 显示hello world
 echo |awk 'i="hello world"{print i}'

echo

3.8.17 查找文件
 find
  1. 可以查看目录下的目录

find

  1. 将目前目录及其子目录下所有最近 20 天内更新过的文件列出

find

3.8.18 显示进程
 ps
选项说明
-A所有的进程均显示出来
-a不与terminal有关的所有进程
-u有效用户的相关进程
-x一般与a参数一起使用,可列出较完整的信息
-l较长,较详细地将PID的信息列出
-e显示所有进程,环境变量
-f全格式
  1. -A :所有的进程均显示出来

ps

  1. -a :不与terminal有关的所有进程

ps

  1. -u :有效用户的相关进程

ps

  1. -x :一般与a参数一起使用,可列出较完整的信息

ps

  1. -l :较长,较详细地将PID的信息列出

ps

3.8.19 压缩文件
 tar
  1. 压缩文件 tar -czvf 1.tar.gz test1

  2. 列出压缩文件内容 tar -tzvf 1.tar.gz

  3. 解压文件 tar -xzvf 1.tar.gz

  4. czvf:

    -c :建立一个压缩文件的参数指令(create 的意思);

    -x :解开一个压缩文件的参数指令!

    -t :查看 tarfile 里面的文件!

    -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

    -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

    -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

    -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

tar

3.8.20 time命令

time

第一行命令输入“time date”

系统先执行命令"date",第2行为命令"date"的执行结果。

第3-6行为执行命令"date"的时间统计结果,其中第4行"real"为实际时间,第5行"user"为用户CPU时间,第6行"sys"为系统CPU时间。

3.8.21 列出块设备
 lsblk

lsblk

3.8.22 计算和检验MD5信息签名
 md5sum  文件名

md5sum

3.8.23 uname 命令

uname

uname 命令就是Unix Name的简写。显示机器名,操作系统和内核的详细信息。

uname 显示内核类别

 uname -a显示详细信息
  1. “Linux“: 机器的内核名
  2. “localhost.localdomain“: 机器的节点名
  3. “3.10.0-693.e17.x86_64“: 内核发布版本
  4. “#1 SMP “: 内核版本
  5. “X86-64“: 处理器架构
  6. “GNU/Linux“: 操作系统名
3.8.24 创建文件
 touch 文件名

touch

3.8.25 cal命令

cal

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 使用date命令显示当前日期。 2. 使用 who命令显示当前所有登录用户的信息,试依次打开多个终端,再查看输出结果的变化。 3. 查看当前linux服务器的主机名的命令。(hostname) 4. 使用clear命令,清除屏幕信息。 5. 添加一个组账号,名称为group1,打开图形界面观察执行后的结果。 6. 查询文件group中group1的记录,改变group1组的GID 为666, 再查看文件group中group1的记录。 7. 以自己的姓名全拼创建一个用户,指定UID为555, 加上用户的备注信息(姓名全称、所在院系等),初始组为group1,有效组为root,打开图形界面观察执行后的结果。 8. 为以自己姓名命名的账户设置密码,并查看passwd文件和shadow文件的最后一行。 9. 使用命令给自己的姓名账户密码冻结,用passwd查看账户相关信息,最后给账户解冻。 10. 进入以自己姓名命名的用户主目录,显示当前的路径,退出当前目录,返回根目录。 11. 复制文件/etc/passwd到用户主目录,文件名不变,打开图形界面Nautilus的窗口观察执行后的结果。 12. 统计文件/etc/passwd文件的字节数和行数。 13. 创建普通文件/home/abc1,创建普通文件/home/abc2。 14. 将/etc/passwd的内容追加到文件abc1中,将/etc/group的内容追加到文件abc2中。(利用附加输出重定向命令)。 15. 修改文件abc1的属性为:属主具有一切权限,同组用户和其他用户具有可读可写的权限。(使用数字模式) 16. 修改abc2的属性为:给其他用户增加可执行的权限。(使用功能模式) 17. 以长文件形式显示文件abc1的详细信息。 18. 进入/home目录,将文件abc1和abc2打包成文件ab.tar,放在以自己姓名命名的用户主目录下(比如/home/liqun),打开图形界面Nautilus的窗口观察执行后的结果。 19. 创建Readme.txt文本文件,内容为你的姓名全拼、学号等信息,保存关闭后用命令查看Readme.txt文件的内容,并在每一行前加行号。 20. 在root目录下创建新文件夹mydir1,其绝对路径为“/root/testdir/mydir1”(假设testdir目录事先并不存在)。 21. 在root目录下创建新文件夹dir1,将其移动到 /root/testdir/mydir1目录下。在root目录下创建新文件夹dir2,将其移动到 /root/testdir目录下,并将其改名为mydir2。打开图形界面Nautilus的窗口,观察以上这些步骤执行后的结果。 22. 分别删除/testdir目录下的mydir1和mydir2目录。(注意rm命令不加-r选项,系统会提示mydir1是个目录不能删除。)(尝试重复步骤20和步骤21,重建上述目录,执行步骤22,比较增加-f选项的区别)。 23. 建立文件/etc/group的符号链接文件/root/a.b,打开图形界面Nautilus的窗口观察a.b文件的特征。 24. 进入根目录的tmp目录下,建立test1和test2两个文件夹,在test1中建立文件a.log, b.log,用ls命令查看所创建的文件a.log,b.log。再把a.log 硬连接到test2目录,文件同名。把b.log 软链接到test2目录下,文件同名。用ls命令查看test2文件夹下所创建的文件,并打开图形界面Nautilus的窗口观察文件夹test2下a.log文件和b.log文件的特征。 25. 由超级用户切换为以自己姓名命名的普通用户身份,并使用普通用户的环境变量,再切换回超级用户身份。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值