每天一个linux命令

2014-08-19

 重定向符号
  大于号:将一条命令执行结果(标准输出,或者错误输出,本来都要打印到屏幕上面的)重定向其它输出设备(文件,打开文件操作符,或打印机等等)
  实例:
   1.ls > b.txt 将ls后的结果写入到b.txt文件中(如存在就覆盖b.txt中的内容)
   2.ls >> b.txt 将ls后的结果不覆盖写入b.txt文件的尾部(如无b.txt则新建)
   3.mysqldump -u root -p test > 20101216_test.sql 倒出数据

  小于号:命令默认从键盘获得的输入,改成从文件,或者其它打开文件以及设备输入
   实例:
   1.mysql -u root -p -h test < 20101216_test.sql 导入数据

2014-08-18

 管道:Linux所提供的管道符“|”将两个命令隔开,将左边命令执行结果通过管道传递给右边的命令再执行
 实例:
 ls -al|grep java
 此命令意思是先执行ls -al列出当前所有文件或目录,再通过管道“|” 转递给grep 查询是否包含java的目录或文件
 常用的有:
 1 .ps aux|grep java
 2. tail -100f log.txt|grep log

2014-08-17

 locate:快速查找文件 (find filenames quickly)
 locate的速度比find快,它并不是真的查找,而是查数据库,
 一般文件数据库在/var/lib/slocate/slocate.db中,
 所以locate的查找并不是实时的,而是以数据库的更新为准
 常用参数:
 1.-e   将排除在寻找的范围之外。
   -1  如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到的档案。
        这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的权限资料。
   -f   将特定的档案系统排除在外,例如我们没有到理要把 proc 档案系统中的档案放在资料库中。
   -q  安静模式,不会显示任何错误讯息。
   -n 至多显示 n个输出。
   -r 使用正规运算式 做寻找的条件。
   -o 指定资料库存的名称。
   -d 指定资料库的路径
   -h 显示辅助讯息
   -V 显示程式的版本讯息
 实例:
 1.locate pwd 查找和pwd相关的所有文件
 2.locate /etc/sh   搜索etc目录下所有以sh开头的文件
 3.locate -r /etc/sh$  搜索etc目录下所有以sh结尾的文件

2014-08-16

 less:对文件或其它输出进行分页显示的工具(opposite of more)
   -b <缓冲区大小> 设置缓冲区的大小
  -e  当文件显示结束后,自动离开
  -f  强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  -g  只标志最后搜索的关键词
  -i  忽略搜索时的大小写
  -m  显示类似more命令的百分比
  -N  显示每行的行号
  -o <文件名> 将less 输出的内容在指定文件中保存起来
  -Q  不使用警告音
  -s  显示连续空行为一行
  -S  行过长时间将超出部分舍弃
  -x <数字> 将“tab”键显示为规定的数字空格
  /字符串:向下搜索“字符串”的功能
  ?字符串:向上搜索“字符串”的功能
  n:重复前一个搜索(与 / 或 ? 有关)
  N:反向重复前一个搜索(与 / 或 ? 有关)
  b  向后翻一页
  d  向后翻半页
  h  显示帮助界面
  Q  退出less 命令
  u  向前滚动半页
  y  向前滚动一行
  空格键 滚动一行
  回车键 滚动一页
  [pagedown]: 向下翻动一页
  [pageup]:   向上翻动一页

2014-08-15

 more :more会以一页一页的显示方便使用者逐页阅读(file perusal filter for crt viewing)
 命令参数:
   +n      从笫n行开始显示
   -n       定义屏幕大小为n行
   +/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
   -c       从顶部清屏,然后显示
   -d       提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
   -l        忽略Ctrl+l(换页)字符
   -p       通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
   -s       把连续的多个空行显示为一行
   -u       把文件内容中的下画线去掉
   4.常用操作命令:
   Enter    向下n行,需要定义。默认为1行
   Ctrl+F   向下滚动一屏
   空格键  向下滚动一屏
   Ctrl+B  返回上一屏
   =       输出当前行的行号
   :f     输出文件名和当前行的行号
   V      调用vi编辑器
   !命令   调用Shell,并执行命令
   q       退出more

2014-08-14

 which  查看可执行文件的位置 (locate a program file in the user‘s path)
 which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
 实例:
 which java

2014-08-13

 nl 将输出的文件内容自动的加上行号(number lines of files)
    -b a :表示不论是否为空行,也同样列出行号(类似 cat -n);
    -b t :如果有空行,空的那一行不要列出行号(默认值);
    -n ln :行号在萤幕的最左方显示;
    -n rn :行号在自己栏位的最右方显示,且不加 0 ;
    -n rz :行号在自己栏位的最右方显示,且加 0 ;
    -w  :行号栏位的占用的位数。
 实例:
 1. nl -b a file1 输出内容并列出行号
 2. nl -b a -n rz file1  列出行号并行号加0
 3. nl -b a -n rz -w 3 file1 将列出的行号保持3位数

2014-08-12

 tail:命令从指定点开始将文件写到标准输出 (display the last part of a file)
 常用参数:
 -f 循环读取
 -n<行数> 显示行数
 -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
 实例
 1.tail -n 10 file1 显示10行末尾的内容
 2.tail -100f file1 动态显示末尾的100行内容
 3.tail -100f file1|grep java 动态显示末尾的100行包含java的内容

2014-08-11

 cat : 连接文件或标准输入并打印  (concatenate files and print on the standard output)
 常用参数:
  -A, --show-all           等价于 -vET
  -b, --number-nonblank    对非空输出行编号
  -e                       等价于 -vE
  -E, --show-ends          在每行结束处显示 $
  -n, --number     对输出的所有行编号,由1开始对所有输出的行数编号
  -s, --squeeze-blank  有连续两行以上的空白行,就代换为一行的空白行
  -t                       与 -vT 等价
  -T, --show-tabs          将跳格字符显示为 ^I
  -v, --show-nonprinting   使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

 实例
 1. cat file 显示整个文件内容
 2. cat file1 file2 >file 合并文件到file
 3. tac file 将文件内容倒过来显示

2014-08-10

cp: 复制(copy files)
 1. cp file1 file2 将文件file1复制成文件file2
 2. cp -i file1 file2 将文件file1复制成文件file2时需问是否复制
 3. cp -f file1 file2 将文件file1强制复制成file2
 4. cp dir1 dir2 将目录dir1复制成dir2
 5. cp file1 file2 file3 dir 将多个文件复制到dir目录中

2014-08-09

  mv:移动文件(move files)
  1. mv file1 file2 将文件file1改名为file2
  2. mv file dir  将文件file移动到目录dir中
  3. mv -i file1 file2 将文件file1改名为file2,如果file2已经存在,则询问是否覆盖
  4. mv -f file1 file2 将文件file1改名为file2,即使file2存在,也是直接覆盖掉
  5. mv dir1 dir2 如果目录dir2不存在,将目录dir1改名为dir2;否则,将dir1移动到dir2中
  6. mv file1 file2 file3 dir1 将多个文件移动到dir1目录中

2014-08-08

 rm :删除 (remove directory entries)
  -f, --force           强制删除。忽略不存在的文件,不提示确认
  -i                    在删除前需要确认
  -r, -R, --recursive   递归删除目录及其内容
  -v, --verbose         详细显示进行的步骤
 (注意慎用rm,怕错删的可以自定义回收站功能)
 自定义回收步骤:
 1.  myrm(){ D=/tmp/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv "$@" $D && echo "moved to $D ok"; }
 2.  alias rm=‘myrm‘

2014-08-07

 mkdir : 创建目录(make directories)
  1)  mkdir -m 777 test
  -m, --mode=模式,设定权限<模式> (类似 chmod)
  2)mkdir -vp src/{lib/,java/}
  -p, --parents  可以创建多级目录
  -v, --verbose  每次创建新目录都显示信息

2014-08-06

 每天一个linux命令
 pwd: 输出当前目录 (Print the name of the current working directory)
 pwd -P  显示出实际路径
 pwd -L 目录连接链接时,输出连接路径(pwd 默认是pwd -L)

 $PWD 当前目录的变量,可以用echo $PWD 输出,结果与pwd一样
 $OLDPWD 上一个目录的变量

2014-08-05

 cd [目录名] :切换当前目录至dirName (Change the current directory to DIR)
 常用命令组合
 1. cd / 进入系统根目录

 2. cd .. 返回上一级目录

 3. cd ~ 或cd   当前用户主目录
(注意:“当前用户主目录”和“系统根目录”是两个不同的概念)

 4. cd -  返回进入此目录之前所在的目录

 5. cd !$  执行linux cd  !$把上个命令最后的参数作为输入

2014-08-04

 ls : 列出目标目录中所有的子目录和文件( list directory contents)
 常用组合参数
 1)ls -al
 -a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件
 -l 将文件的权限、所有者、文件大小等信息详细列出来

 2)ls  u*
 u* 星是正则表达匹配。意思是已u开头的文件或目录

 3) ls -F 列出目前工作目录下所有档案及目录;目录于名称后加"/", 可执行档于名称后加"*"

每天一个linux命令,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。