Linux 常用命令

Originally by: 于俊杰

 

Join    
     
     
     
  Join a1.txt a2.txt inner join by the first column
     
  join -a1 a1.txt a2.txt left join by the first column
     
     
  join -a1 -1 1 -2 3 a1.txt a2.txt left join by the first column in first file, and third col in the third column
     
     
     
     
mkdir    
  mkdir -p ./a1/a2/a3/a4/a6 mamke dirs in all the specified places 
     
     
     
alias    
  alias work="cd ~/data" ~/.bashrc; ~/.bash_profile
     
     
     
     
? mkdir & cd  
  function mkdircd () { mkdir -p "$@" && eval cd "\"\$$#\""; }
     
     
     
cd - 在最近访问的两个目录间转换  
     
     
ssh ssh -V 显示ssh版本
     
   ssh -l junjie.yjj 10.242.94.1  
     
     
grep    
  grep junjie /etc/passwd 文件下查找所有含有“junjie” 的行并全部显示出来
  grep -v junjie /etc/passwd 参数-v会显示出所有不包含匹配文本的内
  grep -c junjie /etc/passwd 显示了在“/etc/password/”下含有“junjie”的行的总数
  grep -cv junjie /etc/passwd 显示了在“/etc/password/”下不含有“junjie”的行的总数
  grep -i junjie /etc/passwd 查找时忽略大小写
  grep -r junjie /home/users 在所有的子目录下执行相应的查找
  grep -rl junjie /home/users 利用参数‘l‘, 只显示文件名
     
     
find    
     
  find /etc -name "*mail*" 找在文件名中含有指定关键字的文件;查找在“/etc”目录下所有文件名中含有“mail”的文件
  find / -type f -size +100M 列出系统中所有大于100M的文件
  find . -mtime +60 列出在当前目录下在最近60天没有被修改过文件
  find . -mtime -2 列出在当前目录下在最近2天被修改过文件
     
     
     
2> /dev/null  
  cat a.txt 2>/dev/null 用“2>/dev/null”禁止错误输出
     
     
     
     
tr tr a-z A-Z < employee.txt 将文件中小写字母转化成大写字母
  tr A-Z a-z < employee.txt 小写字母 --> 大写字母
     
xargs 可以取一个命令的输出作为另一个命令的参数
     
  cat url-list.txt | xargs wget -c  
  find ~ -name "*.conf*" | xargs ls -l
  find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz
     
     
tar 压缩   
   tar -zcvf filename.tar.gz filename 
     
  解压  
     
  tar -zxvf filename.tar.gz  
sort sort name.txt 文本升序排列
  sort -r name.txt 文本降序排列
     
  sort -t: -k 2 name.txt 以: 为分隔符的,第二列为key进行排序
  sort -t: -u -k 3 name.txt 排序且去掉重复项
     
  sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n /etc/hosts 基于ip地址进行排序
     
ls -al | sort +4n 使用升序对ls -al的输出以文件大小进行排序(第5项)
  ls -al | sort +4nr 使用降序对ls -al的输出以文件大小进行排序(第5项)
     
     
uniq    
  sort name.txt | uniq sort -u name.txt  #equalient
  sort name.txt | uniq -c 去除重复,同时进行计数
  sort name.txt | uniq -cd 紧显示有重复项的记录&其计数
     
cut 显示一个文本文件中特定的列或者其它命令的输出
  cut -d: -f 1 names.txt 取冒号分割的文件中的第一列
  cut -d: -f 1,3 names.txt 取冒号分割的文件中的第一&第三列
  cut -c 1-8 names.txt 去文件中每行前八个字符
     
stat 显示一个文件或目录的属性  
  stat /etc/my.conf 查看文件属性
  stat -f / 查看系统属性
     
     
diff 比较两个文件并显示差异  
  diff -w names.txt names2.txt w: 忽略空白
     
     
ac 显示用户的连接时间  
  ac -d  显示当前用户,在不同时间(天)上的连接时间长度
  ac -p  显示所有用户,今天的已连接时间长度
  ac -d junjie.yjj 显示用户不同时间上的连接时间长度
     
     
PS1 默认提示符  
  export PS1="\u@\h \w>" add this to bashrc or bash_profile
    \u 用户名
    \h 主机名
    \w 当前完整工作目录
     
PS2 多行命令默认连接符 (>)  
  addsfs  cont\  
  >inue  
     
PS3 PS4 skip  
     
     
     
PROMPT_COMMAND  
  环境变量  
  Bash在显示PS1之前先执行PROMPT_COMMAND定义的内容
     
  export PROMPT_COMMAND = "date +%k:%m:%S" 22:08:42
     
     
     
zip zip log-files.zip /var/log/* 压缩多个文件
  zip -r log-files.zip /var/log/* 递归的压缩一个目录及目录下的文件
     
  unzip -v log-files.zip v查看解压缩过程中的详细信息
  unzip -l log-files.zip l在不解压缩的情况下,查看其中的文件
     
     
  zip -6 log-files.zip /var/log/* 0-9 压缩程度,数值越大,压缩程度越大; 默认为6
     
  zip -P password log-file.zip /var/log/* 设置压缩密码
  zip -e log-files.zip 交互式设置压缩密码(相对于上面的明文方法)
  zip -t log-files.zip 显示文档的完整性;及其包含的内容
     
tar (tape archive)  
  tar 【选项】 【档案文件名】 【需要归档的文件】
     
  tar cvf /tmp/my_home_directory.tar /home/junjie.yjj
    c:创建档案文件
    v:verbose模式,即在命令执行过程中显示更多信息
    f:在命令中之处归档文件名
     
  tar tvf /tmp/my_home_directory.tar 查看归档文件中包含哪些文件
     
  tar xvf /tmp/my_home_dirctory.tar x:从归档文件中提取所有文件
     
  tar xvfz /tmp/my_home_dirctory.tar.gz -C home/junjie.yjj
    将tar.gz文件解压到制定文件
     
     
tar中使用gzip  
  tar cvfz /tmp/my_home_directory.tar.gz /home/junjie.yjj/ 创建tar.gz
  tar xvfz /tmp/my_home_directory.tar.gz
  tar tvfz /tmp/my_home_directory.tar.gz
     
tar中使用bzip2  
     
  tar cvfz /tmp/my_home_directory.tar.bz2 /home/junjie.yjj/ 创建tar.bz2
  tar xvfz /tmp/my_home_directory.tar.bz2
  tar tvfz /tmp/my_home_directory.tar.bz2
     
  gzip 要比bzip2快  
     
ctrl + r(R)  
  搜索含有关键字的历史命令 ctrl + r (R ) + keyword
     
     
source 环境变量设置  
  source ~/.bash_profile 用户环境变量设置
  source . 在当前shell下执行脚本
     
     
cd    
  cd - 进入上次的路径
     
     
cp    
  cp -r SourceDir TargetDir 递归拷贝文件夹下的文件
     
     
touch    
  touch filename 新建文件
     
ln    
  ln -s SourceFile TargetFile 创建软链接,相当于快捷方式
     
  ln -s  /home/junjie.yjj/data/buy/ buy
w who 显示当前登录的用户
last   显示历史登录的用户
     
     
     
     
yum    
  yum list | grep company 查看当前提供的公司的包
     
  yum install *.rpm 安装某个包
     
  yum remobe *.rpm 删除某个包
     
     
进程管理    
     
ps    
  ps aux 查看所有进程信息
  ps -ef pid 查看某个进程的详细信息
  pstree 查看进程树
     
kill    
  kill pid 杀死某一进程
  kill -9 pid 强制杀死某一进程
     
     
top   查看当前系统的进程占用资源信息,试试刷新
     
nohup cmd & 后台执行,且当前shell退出时,不结束任务
     
     
su su junjie.yjj 切换到junjie.yjj
     
     
  su 切换到root用户
  su -  切换到root用户
  su root 切换到root用户
     
     
rz   将windows 的文件传到linux
     
sz sz filename 将linux文件传到本地
     
     
     
光标移动   
  ctrl + a 光标移到命令行开始
  ctrl + e 光标移到命令行结尾
  ctrl + r 从命令历史中找
  ctrl + l ‘=clear 清屏
     
     
wc    
  wc -l 统计行数

Linux 常用命令,古老的榕树,5-wow.com

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