Linux基本命令二

目录:

  • touch命令
  • stat命令
  • cp命令
  • mv命令
  • file命令
  • rm命令
  • alias命令
  • ln命令
  • cat、tac命令
  • more、less命令
  • hard、tail命令
  • which命令
  • whereis命令
  • locate命令
  • find命令
  • 文件的压缩
    • zip、unzip命令
    • gzip、zcat命令
    • bzip2、bzcat命令
    • tar归档
    • tar练习

touch命令

新建空文件或更新文件时间标记
格式:touch 文件名…
常用命令选项:
-a:改变文件的读取时间记录
-m:改变文件的修改时间记录
-r:使用参考文件的时间记录
-d:设定时间与日期
在这里插入图片描述

stat命令

:文件/文件系统的详细信息显示(可以查看到文件的读取时间、修改时间等)
Acess:内容读取时间
Modify:内容修改的时间
Change:属性(元数据)修改的时间

[root@rhel1 ~]# stat a
  File: `a'
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: 803h/2051d	Inode: 41156620    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-02-27 23:05:34.124999274 +0800
Modify: 2019-02-27 23:05:34.124999274 +0800
Change: 2019-02-27 23:05:34.124999274 +0800

cp命令

用于复制文件或目录
格式: cp [选项] 源文件或目录… 目标文件或目录
-r:递归复制整个目录树
-a:复制时保留链接、文件属性,并递归的复制目录

mv命令

用于移动文件或目录
注意:若目标位置与源位置相同,则相当于改名
格式:mv [选项]… 源文件或目录 目标文件或目录
例:
把hosts复制到当前目录并改名为hosts.bak

mv  /etc/hosts  /etc/hosts.bak

file命令

用于查看文件类型
格式:file 文件名

[root@rhel1 ~]# file a1
a1: empty
[root@rhel1 ~]# file mysql
mysql: directory
[root@rhel1 ~]# file mysql-5.7.14-1.el6.x86_64.rpm-bundle.tar 
mysql-5.7.14-1.el6.x86_64.rpm-bundle.tar: POSIX tar archive (GNU)
[root@rhel1 ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
[root@rhel1 ~]# file /etc/passwd
/etc/passwd: ASCII text

rm命令

用于删除文件或目录
格式:rm [选项] 文件或目录
-f:强行删除文件或目录,不进行提醒
-r:递归删除整个目录树
通配符:
* 匹配0个或者多个字符
? 匹配1个字符
在这里插入图片描述

查看别名alias

命令优先级(别名>内部命令>外部命令)

[root@rhel1 ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

删除别名:unalias 别名名称

ln创建软硬链接

  • 硬链接
    一个文件有多个不同的文件名
    命令格式:ln 源文件… 链接文件
    [root@rhel1 ~]# ln a1 a1.hard
    [root@rhel1 ~]# ll
    total 449772
    -rw-r--r--. 2 root root         0 Feb 27 23:05 a1
    -rw-r--r--. 2 root root         0 Feb 27 23:05 a1.hard
  • 软链接
    符号链接,表面上和硬链接相似
    文件类型权限肯定是lrwxrwxrwx
    命令格式: ln -s 源文件… 链接文件
    在这里插入图片描述
    补充:硬链接和软链接的比较
    软链接:指向原始文件所在的路径,又称为符号链接
    硬链接:指向原始文件对应的数据存储位置
    不能为目录建立硬链接文件
    硬链接与原始文件i必须位于同一分区(文件系统)中。

cat和tac

  • cat命令
    用于显示出文件的全部内容
    格式: cat -n 文件名
    -n:显示行号
  • tac命令
    从最后一行倒着显示出文件的全部内容,无-n选项
    在这里插入图片描述

more命令、less命令

  • more用于全屏方式分页显示文件内容 (看完最后一行自动退出)

交互操作方法:

  • 按Enter键向下逐行翻滚
  • 按空格键向下翻一屏、按b键向上翻一屏
  • 按q退出
  • less与more命令相同,但扩展功能更多(看完最后一行不会自动退出)

交互操作方法

  • 与more命令基本相似,但个别操作会有些出入
  • 【page down】【page up】上翻下翻页

head和tail命令

  • head用于查看文件开头的一部分内容(默认为10行)

格式: head -n文件名

  • tail用于查看文件结尾的少部分内容(默认为10行)

格式:
tail -n 文件名
tail -f 文件名(动态查看文件尾部=tailf)

补充:
tail命令高级用法:
格式:tial -n 数字 文件名
数字:数字前有 +(加号),从文件开头指定的单元 数开始输出;数字前有 -(减号),从文件末尾指定的单元 数开始输出;没有 +或 -,从文件末尾指定的单元 数开始输出。
例如:
tail -n +3 /etc/passwd 从第三行开始显示
tail -n -3 /etc/passwd 显示最后三行
head -n -3 /etc/passwd 不显示最后三行
head -n +3 /etc/passwd 显示前三行

which命令

用于查找可执行文件并显示所在的位置
--------搜索范围由PATH环境变量指定
格式:which 命令或程序名
在这里插入图片描述

whereis命令

用途:查找文件的路径、该文件的帮助文件路径,原理和which类似
格式:whereis 命令或程序名
在这里插入图片描述

locate命令

格式:locate 文件名
根据每天更新的数据库(/var/lib/mlocate)查找,速度块
不能找到自己新建的文件但会找到已经删除的文件
手动更新数据库updatedb

find命令

用途:用于查找文件或目录
格式:find [查找范围] [查找条件] [动作]
常用查找条件
-name:按文件名称查找
-size: 按文件大小查找
-user: 按文件属主查找
-type: 按文件类型查找
-perm :按文件权限查找
-mtime :按文件更改时间查找
-newer:按比某个文件更新的查找

格式1:find [查找范围] [查找条件] [动作]
特殊查找条件

  • -o :逻辑或,只要所给的条件中有一个满足,寻找条件就算满足

  • -not :逻辑非,在命令中可用“!”表示。该运算符表示查找不满足所给条件的文件

  • -a:逻辑与,系统默认是与,可不加,表示只有当所给的条件都满足时,寻找条件才算满足。

例:

[root@rhel1 ~]# find /boot -size +1024k -o -name “vmlinuz*”
/boot/initramfs-2.6.32-642.el6.x86_64.img
/boot/vmlinuz-2.6.32-642.el6.x86_64
/boot/System.map-2.6.32-642.el6.x86_64
/boot/initrd-2.6.32-642.el6.x86_64kdump.img

格式2:find /usr -mtime +/-数字
数字:数字前有 +(加号),大于数字的天数;数字前有 -(减号),小于数字的天数;没有 +或 -,等于数字的天数。
例如:
find /usr -mtime 4 表示4天前那一天
find /usr -mtime -4 表示4天内
find /usr -mtime +4 表示4天前
在这里插入图片描述
格式3:find [查找范围] [查找条件] [动作]
常用动作
-exec:将find查找的结果交给-exec后面的命令执行
-ok:比-exec动作多了一个确认
在这里插入图片描述
例:

[root@rhel1 ~]# find  /home  -user  u1  -exec  ls  -ld  {}  \;
drwx------. 3 u1 u1 4096 Mar  4 21:14 /home/u1
drwxr-xr-x. 2 u1 u1 4096 Jul 14  2010 /home/u1/.gnome2
-rw-r--r--. 1 u1 u1 176 Dec 22  2015 /home/u1/.bash_profile
-rw-r--r--. 1 u1 u1 124 Dec 22  2015 /home/u1/.bashrc
-rw-r--r--. 1 u1 u1 18 Dec 22  2015 /home/u1/.bash_logout

文件的压缩

1、zip、unzip命令
用途:制作压缩文件、解压缩文件
注意:
(zip+目录时 压缩目录本身,不包括目录里面的内容zip压缩目录使用-r选项)

格式:zip 压缩文件名 文件1 文件2
unzip 【-l】 压缩文件名
unzip 解压到指定的目录 -d 目录
在这里插入图片描述
在这里插入图片描述
2、gzip、zcat命令
用途:制作压缩文件、解开压缩文件

格式:

  • gzip [-9] 文件名… ---------压缩

  • gzip -d .gz格式的压缩文件 -----------解压缩

常用命令选项
-9:表示高压缩比,取值1-9,默认为6
-d:用于解压缩文件,同gunzip命令
-c:将输出重定向到标准输出
zcat命令
用途:查看压缩文件内容
格式:zcat 压缩文件名
在这里插入图片描述
3、 bzip2、bzcat命令
用途:制作压缩文件、解开压缩文件
格式:
gzip [-9] 文件名…
gzip -d .gz格式的压缩文件
常用命令选项
-9:表示高压缩比,取值1-9,默认为6
-d:用于解压缩文件,同gunzip命令
-c:将输出重定向到标准输出
zcat命令
用途:查看压缩文件内容
格式:zcat 压缩文件名
4、tar归档
用途:制作归档文件、释放归档文件
格式:
tar [选项]… 归档文件名 源文件或目录
tar [选项]… 归档文件名 [-C 目标目录]
常用命令选项
-c:创建 .tar 格式的包文件
-x:解开.tar格式的包文件
-v:输出详细信息
-f:表示使用归档文件
-t:列表查看包内的文件
-p:保持原文件的原来属性
-P:保持原文件的绝对路径
在这里插入图片描述
tar命令注意事项
一定要注意绝对路径和相对路径问题,推荐使用相对路径。
使用z或j压缩的文件,解压缩的时候不需要加上z或j,tar直接可以识别。
tar对目录和文件都可以进行操作,gzip和bzip2只能对文件进行操作。

tar练习:

停在/root目录下把/etc下的passwd、shadow、group三个文件备份到/tmp下的sxkj.tar文件中去,要求查看sxkj.tar里面的内容,要求最后一列只显示文件名,不带路径。
在这里插入图片描述
接着将/root目录下.bashrc这个文件追加备份到sxkj.tar中去,然后将sxkj.tar中的group文件恢复到/home目录下;再把/home目录下所有的文件都备份到/tmp下的home.tar.bz2中去,停在/root目录下将home.tar.bz2的内容都恢复到/tmp中去
在这里插入图片描述

[root@rhel1 ~]# tar -tvf /tmp/sxkj.tar
-rw-r--r-- root/root      1455 2019-03-20 00:22 passwd
---------- root/root      1060 2019-03-20 00:23 shadow
-rw-r--r-- root/root       689 2019-03-20 00:22 group
[root@rhel1 ~]# tar -rf /tmp/sxkj.tar -C ./ .bashrc
[root@rhel1 ~]# tar -tf /tmp/sxkj.tar 
passwd
shadow
group
.bashrc
[root@rhel1 ~]# cd /home
[root@rhel1 home]# tar -xpf /tmp/sxkj.tar group
[root@rhel1 home]# ls
group  u1  u2
[root@rhel1 home]# tar -cjf /tmp/home.tar.bz2 *
[root@rhel1 home]# tar -tf /tmp/home.tar.bz2 
group
u1/
u1/.gnome2/
u1/.bash_profile
u1/.bashrc
u1/.bash_logout
u2/
u2/.gnome2/
u2/.Xauthority
u2/.bash_profile
u2/.ssh/
u2/.ssh/authorized_keys
u2/.bashrc
u2/.bash_history
u2/.bash_logout

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值