Linux常用指令
Posted xduhongyun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用指令相关的知识,希望对你有一定的参考价值。
1、基本操作
1.1 cd (change directory)
格式:cd <路径>
功能:cd指令后面跟一个路径,有于切换到当前用户所在的路径,其中路径可以是绝对路径,也可以是相对路径。
使用示例:
cd /system/bin 表示切换到/system/bin路径下 cd logs 表示切换到logs路径下 cd / 表示切换到根目录 cd ../ 表示切换到上一层路径
格式
:ls <参数> <路径>
功能:ls命令后面可以跟一个路径或参数,也可以不跟,表示列出路径或当前目录下的所有文件信息。最常用的的参数是“-l",也就是“ls -l”命令。
使用示例:
ls / 显示根目录下的所有文件及文件夹 ls -l /data 显示/data路径下的所有文件及文件夹的详细信息 ls -l 显示当前路径下的所有文件及文件夹的详细信息 ls *l wc 显示当前目录下面的文件数量
1.3 cat (concatenate)
格式: cat <文件>
功能:读取文件内容及拼接文件。
使用示例:
cat /sys/devices/system/cpu/online 读取 /sys/devices/system/cpu/路径下online文件内容 cat test.txt 读取当前路径下test.txt文件内容
1.4 rm (remove)
格式:rm <文件> 或 rm -r <文件夹>
功能:用于删除文件或文件夹,常用参数-r -f,-r表示删除目录,也可以用于删除文件,-f表示强制删除,不需要确认。同样的,删除文件前需保证当前用户对当前路径有修改的权限。
使用示例:
rm -rf path 强制删除path下的目录 rm test.txt 删除test.txt
1.5 mkdir (make directory)
格式:mkdir [-p/-m] 文件夹
功能:用于创建文件夹。创建文件夹前需保证当前用户对当前路径有修改的权限。
-m 或--mode,创建目录的时候同时设置文件的权限;
-p 或--parents,如果上级目录没有创建,即创建输入路径上的所有目录。
使用示例:
mkdir test 在本路径下创建一个名为 test 的子目录 mkdir a b c 一次创建三个子目录 mkdir -p /a/c/v 创建深层目录 mkdir -m 700 test 参数为 -m 700 ,规定权限的数字不能缺省,创建一个由本用户使用权限的目录
权限说明:
1.权限查看
第2~10个字符当中的每3个为一组,左边三个字符表示所有者权限,中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。这三个一组共9个字符,代表的意义如下:
r(Read,读取):
对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权 w(Write,写入):
对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。 x(eXecute,执行):
对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
每个用户都拥有自己的专属目录,通常集中放置在/home目录下,如/home/howardy
这些专属目录的默认权限为rwx------:
三种用户:所有者(user)、用户组(group)和其他用户(other)。
u = user g = group o = other
因为每个用户有rwx
三个对应权限,而我们只要把这三个权限用0
或者1
表示,如000
,110
,再转换成10进制表示,111
=7
,然后三种用户的权限排列起来,如700
,,755
,等,用数字表示的权限等价如下:
7 = rwx = 可读,可写,可执行 6 = rw- = 可读,可写,不可执行 5 = r-x = 可读,不可写,可执行 4 = r-- 3 = -wx 2 = -w- 1 = --x 0 = ---
3.修改权限(chmod)
格式:cp [选项] 源文件 目标文件
功能:复制文件或目录,同时借助某些选项,还可以实现复制整个目录,以及比对两文件的新旧而予以升级等功能。
[选项]:
-a:
此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:
复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:
覆盖已经存在的目标文件而不给出提示。
-i:
与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:
除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:
若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:
不复制文件,只是生成链接文件。
使用示例:
cp /data/logs /data/local/tmp/logs 复制/data路径下的logs到/data/local/tmp路径下 cp 1.sh /sdcard/ 复制当前路径下的1.sh到/sdcard下 cp –r test/ newtest 将当前目录"test/"下的所有文件复制到新目录"newtest"下
1.7 mv (move)
格式:cp 源文件 目标文件
功能:将制定文件或目录转移位置(剪切),如果目标位置与原位置相同,则相当于执行重命名操作。
1.8 kill (kill)
格式:kill PID码
功能:结束当前进程
使用示例:
先通过输入命令 ps au查看进程,找到需要终止进程的PID再通过kill PID即可,如我这里想要终止的进程是vim test.py,查到的PID是3163,我们可以输入kill 3163结束这个程序,如果结束不了,可以通过kill -9 PID码强制结束,即kii -9 3163
除了这七个命令,还有许多常见的命令,如pwd命令,这个可以查看当前路径,这个在移动数据集或者整理文件list的时候很有用;tar命令,这个可以文件压缩;unzip命令,这个可以用于文件解压,这样的命令其实还有很多,需要我们在使用的过程中不断熟练,需要我们不停的查阅学习。
1.9 touch
格式:touch [-acfm] [-d<日期时间>] [-r<参考文件或目录>] [-t<日期时间>] [--help] [--version] [文件或目录…]
功能:1. 把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;
2. 创建新的空文件。
参数说明:
a
改变档案的读取时间记录。
m
改变档案的修改时间记录。
c
假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
f
不使用,是为了与其他 unix 系统的相容性而保留。
r
使用参考档的时间记录,与 --file 的效果一样。
d
设定时间与日期,可以使用各种不同的格式。
t
设定档案的时间记录,格式与 date 指令相同。
--no-create
不会建立新档案。
--help
列出指令格式。
--version
列出版本讯息。
使用示例:
使用指令"touch"修改文件"testfile"的时间属性为当前系统时间,输入如下命令:
touch testfile #修改文件的时间属性
首先,使用ls命令查看testfile文件的属性,如下所示:
ls -l testfile #查看文件的时间属性 #原来文件的修改时间为16:09 -rw-r--r-- 1 hdd hdd 55 2011-08-22 16:09 testfile
执行指令"touch"修改文件属性以后,并再次查看该文件的时间属性,如下所示:
touch testfile #修改文件时间属性为当前系统时间 ls -l testfile #查看文件的时间属性 #修改后文件的时间属性为当前系统时间 -rw-r--r-- 1 hdd hdd 55 2011-08-22 19:53 testfile
使用指令"touch"时,如果指定的文件不存在,则将创建一个新的空白文件。例如,在当前目录下,使用该指令创建一个空白文件"file",输入如下命令:
touch file #创建一个名为“file”的新的空白文件
1.10 其他常用
find: 精细查找文件或目录-name 按名称查找 eg: find /etc -name "resol*.conf"-size 按大小查找 eg: find /etc -size +1M(k,M,G)-user 按属性查找 eg: find /etc -user root-type 按类型查找 eg: find /boot -type d (d 目录; f 普通文件 ; b 块设备 ; c 字符设备文件)-a (and) 逻辑 ‘与’ 运算-o (or) 逻辑‘或’ 运算。
pwd: 查看当前路径。
stat: 查看文件详细状态信息。
2、shell脚本
3、关机以及文件操作
3.1 关机
shutdown -h now 关闭系统(1) init 0 关闭系统(2) telinit 0 关闭系统(3) shutdown -h hours:minutes & 按预定时间关闭系统 shutdown -c 取消按预定时间关闭系统 shutdown -r now 重启(1) reboot 重启(2) logout 注销
3.2 文件搜索
find / -name file1 从 ‘/‘开始进入根文件系统搜索文件和目录 find / -user user1 搜索属于用户 ‘user1‘ 的文件和目录 find /home/user1 -name *.bin 在目录 ‘/ home/user1‘ 中搜索带有‘.bin‘ 结尾的文件 find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件 find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件 find / -name *.rpm -exec chmod 755 ‘{}‘ ; 搜索以 ‘.rpm‘ 结尾的文件并定义其权限 find / -xdev -name *.rpm 搜索以 ‘.rpm‘ 结尾的文件,忽略光驱、捷盘等可移动设备 locate *.ps 寻找以 ‘.ps‘ 结尾的文件 - 先运行 ‘updatedb‘ 命令 whereis halt 显示一个二进制文件、源码或man的位置 which halt 显示一个二进制文件或可执行文件的完整路径
版权声明:本文参考了以下文章
1.CSDN博主「存远」的原创文章,原文链接:https://blog.csdn.net/intflojx/java/article/details/85882002
2.RUBOOB.COM,https://www.runoob.com/linux/linux-comm-cp.html
3.语言中文网,http://c.biancheng.net/view/746.html
4.https://www.runoob.com/linux/linux-comm-touch.html
以上是关于Linux常用指令的主要内容,如果未能解决你的问题,请参考以下文章