参考《linux命令行大全》

一.文件命令

cd - 切换为之前目录

wc -l -w file

cmd --help

apropos keyword

apropos cpu >

type foo 检查命令类型,是否已被占用

alias foo='cd;ll;cd -'

foo

ll
/etc/passwd >
pw.txt (输出重定向时,>自动创建不存在的文件)

>
file (删除一个文件)

cmd
>> file 文件尾部追加,不存在则创建之

0--标准输入文件

1--标准输出文件

2--标准错误文件

cmd
2> err.txt

cmd
&> outerr.txt

cmd
2> /dev/null

cat
f1 f2 > f3 文件合并

$
cat (等待键盘输入)

$
cat -ns
file 删除空行,且对行编号

ctrl-D
(文件触底,end
of file)

cmd
| tee
file
| grep pattern

echo
a{A{1..2},B{3..4}}

aA1
aA2 aB3 aB4

mkdir
{2015..2016}-0{1..9}

2015-01

2015-02

2015-03

二.命令行键盘编辑技巧

1.光标移动

ctrl-A
光标到行首

ctrl-E
光标到行尾

CTRL-F
前移一个字符

CTRL-B
后移一个字符

ALT-F
前移一个字

ALT-B
后移一个字

2.文本编辑

ctrl-D
删除字符

ctrl-T
前字符替换

Alt-U
大写转换

3.剪切复制

ctrl-K
剪切光标到行尾

ctrl-U
剪切光标到行首

ALT-D
剪切光标到词尾

ALT-Backspace
剪切光标到词首

ctrl-Y
复制kill-ring缓冲区到光标

Tab命令自动补齐

ls
l(Tab)---ls log

!88
--执行history中第88行命令

!!
执行history最后一行命令

4.权限

id

cat
/etc/passwd

cat
/etc/group

$
su -c 'command'

sudo与su区别:

执行有限条指令;

sudo无需输入root密码,只输用户密码;

不启动新shell环境,不加载另一个用户环境

进程

ps
     只显示当前会话终端进程

ps
x    显示所有进程

ps
aux

gedit
&    后台运行进程,ctrl-c无法中断

jobs      查看终端所有作业

fg
%jobid    进程回到前台运行

bg
%jobid 进程回到后台

ctrl-z
暂停前台进程

kill
[-signal] PID…

kill
-SIGHUB/1 PID/%jobid 前台程序终止,后台进程重新初始化

kill
-INT PID/%jobid 中断信号,终止程序

killall
[-u user] [-signal] name…

pstree
进程树

vmstat
5 每5s输出资源使用快照,mem,swap,IO

free
-m

du

tail
-f /var/log/messages 实时检测系统的好方法

mount

umount

变量

1.变量显示

set
显示环境变量/shell变量

printenv
USER 仅显示环境变量USER

echo
$USER

PATH=$PATH:$HOME/bin

export
PATH 保证shell子进程能使用PATH变量

gedit
file

2.变量扩展

ls -l $(which cp)

` ’ “区别

ls -l `which cp` 反引号` 等同于 $,作为命令替换

ls -l "my test.txt" 双引号""将特殊字符($ / `除外)视为普通字符

echo "$(cal) "

echo '$(cal)' 单引号‘’抑制所有扩展

$(cal)

echo "money \$:5" 反斜杠阻止双引号内特殊字符($ ! & 空格等)扩展

VIM命令

1.光标移动

shift ^ 本行开头

shift $ 本行末尾

W 下一个单词处

B 上一个单词处

number-shift-G 移到第number行

shift G 至文件最后一行

2.查找替换

:%s/word1/word2/gc
全局替换,%指代^~$

3.复制/粘贴/删除

4.编辑模式—插入

5.外部命令模式

:n 切换到下一文件

:N
切换到上一文件

软件安装

1.RPM安装

rpm -qa package 列出所有安装软件
q-query a-all

rpm -q packname 查询pack是否安装

2.源码安装

wget src

tar zxvf src.tar.gz

./configure

make

#make install

网络

ping baidu.com

netstat -ie 显示网卡信息

文件查找

locate fname 以文件名查找,无法查最新

find ~ [-print] | wc -l 计算行数

find ~ -type
f -name “*.jpg” -size
+1M | wc -l

find ~ \(-type f -not -perm 0600 \) -or \( -type
d -not -perm 0700 \) and默认,or显式

find ~ -type
f -name “*.jpg” -print/delete/ls

find ~ -type
f -name “*.jpg” -exec
ls -l '{}' ';'
每搜到一个执行一次命令

find ~ -type
f -name “*.jpg” -exec
ls -l '{}' '+'
结果集只执行一次命令

find ~ -type
f -name “*.jpg” -ok
ls -l '{}' ';' {}代表当前路径,-ok交互式执行自定义操作

find ~ -type
f -name “*.jpg” -print | xargs
ls -l xargs处理stdin信息并转化为命令输入参数表

find ~ -type
f -name “*.jpg” -print0 | xargs
--null ls -l
以空字符分隔参数

归档备份

1.压缩解压

gzip fname

gzip -tv f.gz 检查完整性/显示详细信息

gunzip fname

zcat f.gz |
less 查看压缩文件内容

bzip2同gzip 高压缩低速度

linux中gzip>bzip2>zip(用于与windows交换文件)

tar

tar mode[options] pathname
以 相对路径 处理处理
文件名路径

mode:

c create

x extract

r apppend

t list the contents
of an archive

tar cf file.tar path

tar tf file.tar

tar tvf file.tar

tar zxvf file.tar

find ~ -name 'file-a' | -exec tar
rf file.tar '{}' '+'

find ~ -name 'file-A' | tar czf play.tgz -T -

  1. -T tar命令从文件(此处为stdout文件)中读取文件路径名列表,而不是从命令行
  2. -
    代表标准输入输出stdin/stdout文件(这里是stdout文件,即屏幕所看到的内容)
  3. find默认action为-print
  4. 举例find play -name 'file-A' | tar czf play.tgz
    -T file.list

#cat file.list

./.profile

./.bashrc

./dbootstrap_settings

./usr.include.txt

./.viminfo

Regular Expresstion

支持命令find
locate vim less

grep [options] regex file…
#
查找匹配行

-i
忽略大小写

-v
输出不匹配行

-h不输出文件名,只输出匹配内容

BRE基本正则表达式元字符:(
)^ $ . * \为元字符)

ERE扩展正则表达式元字符:
+-*\ ()[]{} ^$ .| ? '
'
括起避免扩展,\为文字字符)

# grep -h '^zip' file

zip1

zip2

#grep -h 'zip$' file

1zip

2zip

# grep -h '^zip$' file

zip

grep -Eh '^(bz|gz|zip)' file

匹配电话号码(nnn)nnn-nnnn或nnn
nnn-nnnn表达式:

grep -E ===> egrep 扩展REG

egrep '^\(?[0-9]{3}\)? [0-9]{3}-[0-9]{4}$'
phone.txt #(,)出现01

find ~ -regex
'.[^-_./0-9a-zA-Z].*' findtest选项支持regex

locate --regex
'bin(bz|gz|zip)'

zgrep -El 'regex |
regular expression' . zgrep对压缩文件进行搜索

文本处理

排序

sort -t ';' -k
3.7nbr -k 4.1nbr file | uniq
| head

t为指定分割符;

-k 3.7nbr
第3个字段第7字符为关键字,忽略开头空白(b),逆序(r),数字排序(n)

uniq只对已排序文件有效

^I – 制表符Tab

截断

cat -A

cut -d ':' -f 1
/etc/passwd | head

paste data.txt version.txt

比较

cat f1 f2 逐行比较已排序文件f1,f2

diff -c f1 f2 上下文格式输出,+多,-少

diff -u f1 f2

diff -Naur fold fnew
> diff_file

patch < diff_file

-N, --new-file:treat
absent files as empty

-a: treat all files as text

-r : recursively compare any subdirectories found

替换删除tr

echo “i love linux” | tr
a-z A-Z 替换

tr -d '\r' <
dos_file > unix_file 删除dos文件回车符\r

sed 's/old/new/g

sed -n '1,5p' file

nl text 对文本行编号

p { margin-bottom: 0.1in; direction: ltr; color: #00000a; line-height: 120%; text-align: left; orphans: 0; widows: 0 }
p.western { font-size: 12pt }
p.cjk { font-size: 12pt }

Linux常用命令List的更多相关文章

  1. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

  2. linux常用命令的介绍

    本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...

  3. linux——常用命令与脚本

    linux常用命令 --文件管理pwd --查看当前目录cd --切换当前目录ls --列出当前目录下的所有文件touch --创建文件mkdir --建立目录rmdir --删除空目录rm --删除 ...

  4. DOS 和 Linux 常用命令的对比

    DOS 和 Linux 常用命令的对比 许多在 shell 提示下键入的 Linux命令都与你在 DOS 下键入的命令相似.事实上,某些命令完全相同. 本附录提供了 Windows的 DOS 提示下的 ...

  5. 第一章,Linux常用命令

    20161124 Linux常用命令1.find find /etc/ -size +50k -lsfind /etc/ -size +50k -ls 2> /dev/null查看目录下大于50 ...

  6. linux 常用命令大全

    linux 常用命令大全 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统 ...

  7. Linux 常用命令行

    Linux常用命令行 第一部分: cd命令 第二部分:文件操作 第三部分:压缩包操作

  8. [工作需求]linux常用命令以及vim常用命令

    一.             Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...

  9. 对于我的linux常用命令的说明

    我所列出的linux常用命令中的选项并不是全部的选项,是一些我们经常用到的linux命令及选项

  10. Linux 常用命令笔记

    Linux 常用命令笔记 1. locate locate:用来定位文件的位置,如:locate a.txt 但是这个命令有延迟,也就是新建的文件不一定能搜索到,如果非要找到新建的文件可以使用 upd ...

随机推荐

  1. Jsp注册界面——request对象

    1. Reg.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pa ...

  2. 每天一个linux命令(37)--iostat命令

    Linux 系统中的iostat是I/O statistics (输入/输出统计)的缩写,iostat工具将对系统的磁盘操作活动进行监视.它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况. ...

  3. PHP工厂模式

    class yunsuan { public $a; public $b; function suan() { echo "对两个数进行运算"; } } class jia ext ...

  4. Spring框架---IOC装配Bean

    IOC装配Bean (1)Spring框架Bean实例化的方式提供了三种方式实例化Bean 构造方法实例化(默认无参数,用的最多) 静态工厂实例化 实例工厂实例化 下面先写这三种方法的applicat ...

  5. 转换器2:ThinkPhp模板转Django模板

    前天写了个<ThinkPhp模板转Flask模板> 居然被同事鄙视了,原因是他用Django,我用Flask,为了避免被他继续安利Django的强大.我决定写一个Django模板转换器. ...

  6. SFTP远程文件上传

    远程服务器remote_host=192.168.29.142用户为remote_www,用户当前目录为/home/remote_www 本地服务器local_host=192.168.29.135用 ...

  7. Objective-C日记-Bounds和Frame

    今天在学习有关UIView时,关于Bounds和Frame的问题困扰多时,今日研究了一翻,有所收获,遂记之. 一.问题来源 网上有关bounds和frames的比较的文章主要就是一篇:http://b ...

  8. Django中使用CKEditor代码高亮显示插件Code Snippet

    Django使用CKEditor可以安装django-ckeditor这个模块,具体步骤可按照这里进行:http://www.nanerbang.com/article/2/ 我在富文本编辑器中想使用 ...

  9. 重磅消息:微信小程序支持长按二维码进入

    之前微信小程序一般通过以下入口进入: 而用户经常使用“长按二维码”识别应用的功能一直未开放,据酷客多了解,微信安卓6.5.6内测版已经支持长按二维码识别和进入小程序,意味着把小程序二维码分享给朋友,或 ...

  10. nao安装中文包教程

    本文介绍nao离线安装中文包 相官方索取 .demo 文件夹,里面包含很多的例程和中文包 下载winscp和putty(或者xshell),下载过程和安装我就不多说了,免费 把nao开机,连接路由器等 ...