Linux常用命令

ls

查询目录中的内容。
语法:

ls [选项] [文件或目录]

选项:
-a 显示所有文件,包括隐藏文件;
-l 显示详细信息;
-d 查看目录属性;
-h 人性化显示文件大小;
-S 按照文件大小排序;
-i 显示inode。

示例:显示当前目录下面占用最大的前十个文件

ls -alhS | head

文件权限

-rw-r--r--

-表示文件类型(-实体文件 l软连接文件 d文件夹)
rw-表示所有者
r--表示所属组
r--表示其他人
r代表读权限;w代表写权限;x代表执行权限。

配合chmod命令,改变文件权限。通常,r用4表示,w用2表示,x用1表示。如下示例:

chmod 700 <file>  # 表示文件所有者具有读写执行权限
chmod 600 <file> # 表示文件所有者具有读写权限
chmod 500 <file> # 表示文件所有者具有读和执行权限

另外,使用chmod命令时,还可以使用+ -进行权限的改写操作。其中,u表示user,g表示group, o表示others. 如下示例:

⇒  touch guagua

⇒  ls -l guagua
-rw-r--r--  1 DQ  staff  0  7 20 20:09 guagua

⇒  chmod u-rw guagua  # 对user减少读写权限

⇒  ls -l guagua
----r--r--  1 DQ  staff  0  7 20 20:09 guagua

⇒  chmod o+rwx guagua  # 对others增加读写执行权限

⇒  ls -l guagua
----r--rwx  1 DQ  staff  0  7 20 20:09 guagua

cd

cd ~或者cd 进入家目录
cd - 进入上次的目录
cd .. 进入上级目录

cp

复制文件

cp [选项] [原文件或目录] [目标目录]

选项:
-r 复制目录;
-p 连带文件属性复制;
-d 若源文件是链接文件,则复制链接属性;
-a 全复制,相当于-pdr

ln

链接命令

ln -s [原文件] [目标文件]

选项:
-s 创建软链接,无-s,则创建硬链接。

硬链接特征:
1.拥有相同的i节点和存储block块,可以看做是同一个文件;
2.可以通过i节点识别;
3.不能跨分区;
4.不能针对目录使用。
5.修改原文件或者硬链接文件,另一个文件也被相等的修改。

软链接特征:
1.类似Windows的快捷方式;
2.拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据;
3.修改任意文件,另一个文件随之改变;
4.删除原文件,软链接不能使用;
5.在使用软链接的命令时,原文件要使用完整(绝对)路径。

locate

文件搜索,在后台数据库中按文件名搜索,搜索速度更快。

locate 文件名

locate命令搜索的后台数据库为/var/lib/mlocate(CentOS 6.3)
更新数据库:
updatedb**。

命令搜索

1.whereis

whereis 命令名

搜索命令所在路径及帮助文档所在位置。
选项:
-b: 只查找可执行文件;
-m: 只查找帮助文件。

2.which

which 命令名

搜索命令所在路径及别名。

find

搜索文件

find [搜索范围] [搜索条件]

示例:
搜索~/Desktop/Linux目录及其子目录下的txt文件:find ~/Desktop/Linux -name '*.txt'
注意'*.txt'要加''号,否则搜索不出结果。

其他搜索:
find <fpath> -iname <file> 不区分大小写搜索

find <fpath> -user root 按照所有者搜索

find <fpath> -nouser 查找没有所有者的文件

find <fpath> <time类型> <time区间>
其中:time类型可以为atime,表示文件访问时间;ctime表示改变文件属性时间;mtime表示修改文件内容时间。time区间示例:-10表示10天内修改的文件;10表示刚好10天前的当天修改的文件;+10表示10天前修改的文件。

find <fpath> -size 25k 查找文件大小是25KB的文件
-25k 小于25KB的文件;
25k 等于25KB的文件;
+25k 大于25KB的文件。
注意:按照k搜索,k小写;按照M搜索,M大写。

find <fpath> -inum 262422 查找i节点是262422的文件

find <fpath> -size +20k -a -size -50k 查找fpath目录及其子目录下,大于20KB并且小于50KB的文件。
-a 表示and,逻辑与,两个条件都满足;
-o 表示or,逻辑或,两个条件满足一个即可。

find <fpath> -size +20k -a -size -50k -exec ls -lh {} ; 查找fpath目录及其子目录下,大于20KB并且小于50KB的文件,并且显示详细信息。
-exec/-ok 命令 {} ;,对搜索结果执行操作。

grep

搜索字符串命令。

grep [选项] <字符串> <文件名>

在文件当中匹配符合条件的字符串。
选项:
-i 忽略大小写;
-v 排除指定字符串。

find命令与grep命令的区别
find 在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符(*?[])匹配,通配符为完全匹配;
grep 在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式为包含匹配。

man

帮助命令

man <命令名>

主要的帮助命令为:
1 User Commands: 查看命令的帮助
2 System Calls: 查看可被内核调用的函数的帮助
3 C Library Functions: 查看函数和库函数(C)的帮助
4 Devices and Special Files: 查看特殊文件的帮助(主要是/dev目录下的文件)
5 File Formats and Conventions: 查看配置文件的帮助
6 Games et. Al.: 查看游戏的帮助
7 Miscellanea: 查看其它杂项的帮助
8 System Administration tools and Deamons: 查看系统管理员可用命令的帮助

查看命令拥有哪个级别的帮助

man -f <命令名>

相当于命令whatis,如搜寻man -f passwd,结果如下:

passwd(1)                - modify a user's password
passwd(1ssl)             - compute password hashes
passwd(5), master.passwd(5) - format of the password file
slapd-passwd(5)          - /etc/passwd backend to slap

因此,可以进一步查询man 1 passwd或者man 5 passwd,则会分别显示出passwd的不同帮助文档。

查看与命令所有相关的帮助

man -k <命令名>

相当于命令apropos,如搜寻man -k passwd,结果如下:

CURLOPT_KEYPASSWD(3)     - set passphrase to private key
SSL_CTX_set_default_passwd_cb(3ssl), SSL_CTX_set_default_passwd_cb_userdata(3ssl) - set passwd callback for encrypted PEM file handling
chkpasswd(8)             - verifies user password against various systems
firmwarepasswd(8)        - tool for setting and removing firmware passwords on a system
htpasswd(1)              - Manage user files for basic authentication
kpasswd(1)               - Kerberos 5 password changing program
kpasswdd(8)              - Kerberos 5 password changing server
ldappasswd(1)            - change the password of an LDAP entry
passwd(1)                - modify a user's password
passwd(1ssl)             - compute password hashes
passwd(5), master.passwd(5) - format of the password file
slapd-passwd(5)          - /etc/passwd backend to slapd
slappasswd(8)            - OpenLDAP password utility

查询技巧
在帮助文档中输入/<字符串>,如/-d,则会搜索出文档中所有包含-d的字符串,按键n跳转至下一处,按键p跳转至上一处。

其他帮助命令

1 <命令名> --help
ls --help

2 help <命令名>
只能获取shell内部自带的命令的帮助,如help cd。(注释:mac下不可用)

3 info <命令名>
获取详细命令的帮助
操作选项:
回车:进入子帮助页面(带有*号标记)
u:进入上层页面
n:进入下一个帮助小节
p:进入上一个帮助小节
q:退出


常用快捷键

ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台(并不是终止程序命令)
ctrl+r 在历史命令中搜索

touch

创建文件。
连续创建多个文件可用如下命令,如连续创建10个文件

touch love_{1..10}_gua.txt


du

查看目录的容量。

du -h # 以对人类友好的方式显示
du -d [0|1|2|3...] # 显示查询的目录深度

⇒  du -h -d 0 # 显示当前目录容量
248K    .

⇒  du -h -d 1 # 显示更深一层目录容量
100K    ./dq
 36K    ./gua
 36K    ./gua 2
 36K    ./gua 3
248K    .

&&与||

通常情况下,&&表示逻辑与,||表示逻辑或。在Linux的shell中,就我个人理解,&&||的用法为:

a && b 只有当a为真时,即返回值为0时(echo ?=0),b才执行 a || b 只有当a为假时,即返回值不为0(echo?=!0),b才执行


aptitude

查看已安装的程序文件信息

aptitude show <program>

例如:aptitude show python3将显示以下信息:

软件包: python3                 
状态: 已安装
自动安装: 否
Multi-Arch: allowed
版本号: 3.5.1-3
优先级: 重要
部分: python
维护者: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
体系: amd64
未压缩尺寸: 68.6 k
依赖于: python3.5 (>= 3.5.1-2~), libpython3-stdlib (= 3.5.1-3), dh-python
预依赖于: python3-minimal (= 3.5.1-3)
建议: python3-doc (>= 3.5.1-3), python3-tk (>= 3.5.1-2~), python3-venv (>=
    3.5.1-3)
冲突: python3:i386
代替: python3-minimal (< 3.1.2-2), python3-minimal:i386 (< 3.1.2-2)
提供: python3-profiler, python3-profiler:any, python3-profiler:i386, python3:any
    (= 3.5.1-3)
描述: interactive high-level object-oriented language (default python3 version)
 Python
 是一种交互式、面向对象的高级语言;它带有从网络编程、系统管理,到声音和图像处理
 的各式类库。 
 
 This package is a dependency package, which depends on Debian's default Python
 3 version (currently v3.5).
主页: http://www.python.org/

反引号(`)

在一串命令中,在反引号(`)之内的命令将会被先执行,而其执行出来的结果将作为外部的输入信息。
示例:

ls -l locate crontab

结果如下:

dh@virtual-machine:~$ ls -lh `locate crontab`
-rw-r--r-- 1 root root     401 12月 29  2014 /etc/anacrontab
-rw-r--r-- 1 root root     722 4月   6  2016 /etc/crontab
-rw-rw-r-- 1 dh   dh        89 4月  18  2018 /home/dh/crontab.tmp
-rwxr-sr-x 1 root crontab  36K 4月   6  2016 /usr/bin/crontab
-rw-r--r-- 1 root root    1.2K 5月  18  2016 /usr/share/bash-completion/completions/crontab
-rw-r--r-- 1 root root     28K 4月   6  2016 /usr/share/doc/cron/examples/crontab2english.pl
-rw-r--r-- 1 root root    2.5K 4月   6  2016 /usr/share/man/man1/crontab.1.gz
-rw-r--r-- 1 root root     892 12月 29  2014 /usr/share/man/man5/anacrontab.5.gz
-rw-r--r-- 1 root root    5.6K 4月   6  2016 /usr/share/man/man5/crontab.5.gz
-rw-r--r-- 1 root root    2.5K 6月  11 23:07 /usr/share/vim/vim74/syntax/crontab.vim

此时使用ls -lh $(locate crontab)能达到同样效果,但是locate crontab | ls -lh却不行。
此外,$()${}的区别如下,容易被搞混:
$():这个小括号里放的是命令,和``反引号作用一样,执行这个命令;
${}:这里面放的是变量,用来引用的。


创建指定大小的文件

dd if=/dev/zero of=gua bs=1K count=777

如上,创建了一个大小为777kb,文件名为gua的空文件。


获取当前文件夹下文件的绝对路径

ls $PWD/<文件名>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,802评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,109评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,683评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,458评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,452评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,505评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,901评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,550评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,763评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,556评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,629评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,330评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,898评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,897评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,140评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,807评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,339评论 2 342

推荐阅读更多精彩内容