目录和文件处理
mkdir
建立目录
1 | # 用法: |
rmdir
( remove directory ) 删除给定的目录
ls
( list ) 列出目录下的内容
1 | # 用法: |
cd
( change directory ) 更换工作目录
1 | # 用法: |
pwd
( print working directory ) 显示当前工作目录
1 | # 用法: |
cp
( copy ) 拷贝文件及其目录
1 | # 用法: |
mv
( move ) 移动(重命名)文件
1 | # 用法: |
rm
( remove ) 删除文件或目录
1 | # 用法: |
find
在目录及其子目录查找文件
1 | # 用法: |
history
显示最近使用过的命令
1 | # 用法: |
diff
1 | # 比较的时候忽略空白符 |
文本处理
模式的定义:模式是一种表达式,不列出所有元素,而是给出一系列字符串的一种精确描述。
例如 ab*cd匹配了以ab开始和cd结束的一系列字符串。
cat
( concatenate and print files )
连结文件打印到标准输出。
1 | # 用法: |
echo
显示一行文本
1 | # 用法: |
grep
搜索特定的内容并将含有这些内容的行标准输出
1 | # 用法: |
wc
统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
1 | # 用法: |
sort
对文件中的各行进行排序
1 | # 用法: |
系统管理
Linux系统上文件有三种权限:读,写和执行。敲入ls –l命令后,我们发现用10位表示文件信息
1 2 3 4 5 6 7 8 9 10 文件类型拥有者(owner)群组成员(groups)其他人(others)
例:drwxrwr 意味着拥有者拥有三种权限,群组成员拥有读写权限,其他人只拥有可读权限。
权限位相应的数值读-4 写-2 执行-1
例 rwxrwr = 764
673 = rwrwxwx
chmod
控制用户对文件的权限
1 | # 用法: |
chown
改变档案的拥有者
1 | # 用法: |
su
( switch user )
su
是切换到其他用户,但是不切换环境变量1 | # 用法: |
passwd
更改使用者的密码参数
/etc/passwd
该目录存储的是操作系统用户信息,该文件为所有用户可见。/etc/shadow
被称为 /etc/passwd
的影子文件。它们之间的内容是互补的。shadow内容包括用户及被加密的密码以及其它 /etc/passwd
不能包括的信息,比如用户的有效期限等。1 | # 用法: |
who
显示目前登入系统的用户信息
1 | # 用法: |
进程管理
ps
( processes )
强悍的进程查看命令
1 | # 用法: |
kill
删除执行中的程序或工作
1 | # 用法: |
jobs
通过
jobs
命令查到后台正在执行的命令的序号( 非进程号pid )1 | # 用法: |
bg
指定号码(非进程号)的命令进程放到后台运行
1 | # 用法:输入'ctrl+z' 然后输入 'bg <job id>' |
fg
指定号码(非进程号)的命令进程放到前台运行
1 | # 用法: |
档案
tar
压缩和解压
1 | # 用法: |
zip
打包压缩
1 | # 用法: |
unzip
解压缩zip文件
1 | # 用法: |
网络
ssh
远程登录的客户端
1 | # 用法: |
scp
基于ssh登陆进行安全的远程文件拷贝命令
1 | # 用法: |
ping
通过发送数据包ping远程主机( 服务器 ),常用与检测网络连接和服务器状态。
文件系统
fdisk
观察硬盘之实体使用情形与分割硬盘用
1 | # 用法: |
mount
如果你要使用储存设备( Mo、硬盘、光驱等 ),就得先将它挂上( Mount ),而当储存设备挂上了之后,就可以把它当成一个目录来进行访问。挂上一个设备使用mount命令。
在使用mount这个指令时,至少要先知道下列三种信息:
1. 要Mount对象的文件系统类型?( File system type )
2. 要Mount对象的设备名称? ( /dev/???? )
3. 要将设备Mount到哪个目录去?
1 | # 用法: |
umount
卸除文件系统
1 | # 用法: |
du
查看目录或文件所占用磁盘空间的大小
1 | # 用法: |
df
( disk space free )
检查文件系统的磁盘空间占用情况。
1 | # 用法: |
quota
显示磁盘使用情况和限制情况
1 | # 用法: |
awk
1 | # nginx 统计日志ip个数并排序 |
rsync
1 | # 目录同步(文件变更也会同步) |
split
功能说明:用于将源文件分割为多个文件,分割包括按照字节( -b ),按行( -l ),按字符( -C )
设置切割后文件的前置文件名,split 会自动在前置文件名后再加上编号
1 | # 指定文件大小分割文件( m,k ) |
tr
功能说明:tr命令用于文件内容的替换
1 | # 小写转大写 |
扩展
reboot
重启系统
1 | # 用法: |
poweroff
关闭系统
1 | # 用法: |
sed
一种在线编辑器,它一次处理一行内容
1 | # 用法: |
10个强大的Linux单行命令
sudo !!
以 root 帐户执行上一条命令。
python -m SimpleHTTPServer
利用 Python 搭建一个简单的 Web 服务器,可通过 http: //ip:8000 访问。
:w !sudo tee %
在 Vim 中无需权限保存编辑的文件。
cd -
更改到上一次访问的目录。
^foo^bar
将上一条命令中的 foo 替换为 bar,并执行。
cp filename{,.bak}
快速备份或复制文件。
mtr google.com
traceroute + ping。
!whatever:p
搜索命令历史,但不执行。
$ssh-copy-id user@host
将 ssh keys 复制到 user@host 以启用无密码 SSH 登录。
ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg
把 Linux 桌面录制为视频。
常用快捷键
Ctrl+r
根据关键字查询以往输入的linux相关命令
Ctrl+w
删除光标前的一个单词,这样就不必要每次都按delete键删除一个一个字母了
移动光标
Ctrl–a
移到行首
Ctrl–e
移到行尾
Ctrl–xx
在命令行尾和光标之间移动
Ctrl-a
+ Ctrl-k
或 Ctrl-e
+ Ctrl-u
或 Ctrl-k
+ Ctrl-u
组合可删除整行。