参考《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. AlloyTouch之select选择插件

    原文地址:https://github.com/AlloyTeam/AlloyTouch/wiki/Simple-Select 写在前面 很多情况下,产品希望统一安卓和IOS select交互和样式. ...

  2. iOS仿微博客户端一条微博的布局

    前言 做一个微博客户端的第三方是自学的第一个实践的项目,自从从事iOS工作之后,就把这个项目给搁置了.趁现在过年回来有些空闲时间,再次修改(总觉得项目就是不停地修改).并且记录一点东西,以后可再回头看 ...

  3. 2017-3-2 C# WindowsForm 中label标签居中显示

    有时候label标签要输出 label.text=""; 的语句,那么要把这个语句居中显示 1.要取消他的Autosize的值 2.拉大这个框,设置里面的文本的TextAlign ...

  4. Prerender.io - 预渲染架构,提高AngularJS SEO

    近些年来,越来越多的JavaScript框架(即AngularJS,BackboneJS,ReactJS)变得越来越流行.许多公司和开发人员使用这些JavaScript框架开发应用程序.这些框架有很多 ...

  5. request.RequestContextListener

    由于是使用spring mvc来做项目,因此脱离了HttpServletRequest作为参数,不能够直接使用request,要想使用request可以使用下面的方法: 在web点xml中配置一个监听 ...

  6. 【Unity编程】欧拉角与万向节死锁(图文版)

    版权声明:本文为博主原创文章,欢迎转载.请保留博主链接:http://blog.csdn.net/andrewfan 万向节死锁(Gimbal Lock)问题 上文中曾经说过,欧拉旋转的顺规和轴向定义 ...

  7. KoaHub.JS基于Node.js开发的Koa 生成验证码插件代

    ccap node.js generate captcha using c++ library CImg without install any other lib or software node- ...

  8. 初次接触java中的递归算法

    一道关于兔子繁衍的编程题: 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 自己考虑了挺久,思路出现了问题,甚至连 ...

  9. 右键打开cmd命令出错

    今天想在E盘git clone一个工程项目下来,发现自己的window10上,出现了如下问题(不知道是不是是什么软件引起的冲突) 在度娘里面找了半天也没有解决问题,只有通过如下方法实现了 ctrl+r ...

  10. 【SSH项目实战三】脚本密钥的批量分发与执行

    [SSH项目实战]脚本密钥的批量分发与执行 标签(空格分隔): Linux服务搭建-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载, ...