Shell 常用的命令
ls
功能:列出目录内容
常用选项:
-a 显示所有文件,包括隐藏的
-l 长格式列出信息
-i 显示文件 inode 号
-t 按修改时间排序
-r 按修改时间倒序排序
-h 打印易读大小单位
2 echo
功能:打印一行
常用选项:
-n 不加换行符
-e 解释转义符
cat
功能:连接文件和标准输出打印
常用选项:
-b 显示非空行行号
-n 显示所有行行号
-T 显示 tab,用^I 表示
-E 显示以$结尾
tac
功能:连接文件和倒序打印文件
常用选项:
示例:
倒序打印每一行:
wc
功能:统计文件行数、字节、字符数
常用选项:
-c 打印文件字节数,一个英文字母 1 字节,一个汉字占 2-4 字节(根据编码)
-m 打印文件字符数,一个汉字占 2 个字符
-l 打印多少行
-L 打印最长行的长度,也可以统计字符串长度
cp
功能:复制文件或目录
常用选项:
-a 归档
-b 目标文件存在创建备份,备份文件是文件名跟~
-f 强制复制文件或目录
-r 递归复制目录
-p 保留原有文件或目录属性
-i 覆盖文件之前先询问用户
-u 当源文件比目的文件修改时间新时才复制
-v 显示复制信息
mkdir
功能:创建目录
常用选项:
-p 递归创建目录
-v 显示创建过程
mv
功能:移动文件或重命名
常用选项:
-b 目标文件存在创建备份,备份文件是"文件名后跟~"
-u 当源文件比目的文件修改时间新时才移动
-v 显示移动信息
rename
功能:重命名文件,支持通配符
将以.htm 后缀的文件替换为.html:
# rename .htm .html *.htm
dirname
功能:去除路径的最后一个名字
常用选项:
示例:
# dirname /usr/bin/
/usr
basename
功能:打印路径的最后一个名字
常用选项:
-a 支持多个参数
-s 删除后面的后缀
示例:
# basename /usr/bin/sort
sort
# basename include/stdio.h .h
stdio
# basename -s .h include/stdio.h
stdio
# basename -a any/str1 any/str2
str1
str2
du
功能:估算文件磁盘空间使用
常用选项:
-h 易读格式显示(K,M,G)
-b 单位 bytes 显示
-k 单位 KB 显示
-m 单位 MB 显示
-s 只显示总大小
--max-depth=<目录层数>,超过层数的目录忽略
--exclude=file 排除文件或目录
--time 显示大小和创建时间
示例:
查看目录大小:
# du -sh /opt
排除目录某个文件:
# du -sh --exclude=test /opt
cut
功能:选取文件的每一行数据
常用选项:
-b 选中第几个字符
-c 选中多少个字符
-d 指定分隔符分字段,默认是空格
-f 显示选中字段
示例:
打印 b 字符:
# echo "abc" |cut -b "2"
b
截取 abc 字符:
# echo "abcdef" |cut -c 1-3
abc
以冒号分隔,显示第二个字段:
# echo "a:b:c" |cut -d: -f2
b
tr
功能:替换或删除字符
格式:Usage: tr [OPTION]... SET1 [SET2]
常用选项:
-c 替换 SET1 没有 SET2 的字符
-d 删除 SET1 中字符
-s 压缩 SET1 中重复的字符
-t 将 SET1 用 SET2 转换,默认
示例:
替换 SET1 没有 SET2 的字符:
# echo "aaabbbccc" | tr -c c 1
111111ccc
去重字符:
# echo "aaacccddd" | tr -s '[a-z]'
acd
删除字符:
# echo "aaabbbccc" | tr -d bbb
aaaccc
删除换行符:
# echo -e "a\nb\nc" | tr -d '\n'
abc
替换字符:
# echo "aaabbbccc" | tr '[a-z]' '[A-Z]'
AAABBBCCC
stat
功能:显示文件或文件的系统状态
常用选项:
-Z 显示 selinux 安全上下文
-f 显示文件系统状态
-c 指定格式输出内容
-t 以简洁的形式打印
示例:
显示文件信息:
# stat file
只显示文件修改时间:
# stat -c %y file
seq
功能:打印序列化数字
常用选项:
-f 使用 printf 样式格式
-s 指定换行符,默认是\n
-w 等宽,用 0 填充
示例:
数字序列:
# seq 3
1
2
3
带 0 的数字序列:
# seq -w 03
01
02
03
范围数字序列:
# seq 2 5
2
3
4
5
步长序列:
# seq 1 2 5 # 2 是步长
1
3
5
Shell 常用的命令的更多相关文章
- shell 常用小命令总结
1. 重命名 1) 较简单的处理命令:mv 原文件名 新文件名 如:mv myFile newName ### 将MyFile重命名为newN ...
- (转)Hbase shell 常用命令(1)
Hbase shell 常用命令(1) link:http://blog.csdn.net/scutshuxue/article/details/6988348 下面我们看看HBase Shell的一 ...
- hbase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- 【转载】HBase基本概念和hbase shell常用命令用法
1. 简介 HBase是一个分布式的.面向列的开源数据库,源于google的一篇论文<bigtable:一个结构化数据的分布式存储系统>.HBase是Google Bigtable的开源实 ...
- Linux+Shell常用命令总结
因为自己不经常使用linux的命令行工具,但是mac的终端还是经常使用的,有些命令总是要想一会或者百度一下才知道怎么用,抽时间整理了一下常用的命令,作为笔记. 常用命令 查看文件操作: ls :列出当 ...
- Linux Shell常用shell命令
Linux Shell常用shell命令 一.文件.目录操作命令 1.ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示 ...
- Linux学习之常用网络通信命令与shell简单应用技巧(四)
(一)常用网络通信命令 (1)ping命令 (2)write命令 (3)wall命令 (4)ifconfig命令 (5)shutdown命令 (6)reboot命令 (二)shell简单应用技巧 (1 ...
- Shell 常用命令总结
Shell常用命令总结 1 ls命令:列出文件 ls -la 列出当前目录下的所有文件和文件夹 ls a* 列出当前目录下所有以a字母开头的文件 ls -l *.txt 列出当前目录下所有后缀名 ...
- SHELL 脚本----常用的命令
一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行she ...
随机推荐
- 用mathematica求六元一次方程组且方程个数比变量个数少一个
问题详见知乎:https://www.zhihu.com/question/68000713 我的问题:有5个方程,6个变量,其实我是想求出来de1=(系数)*dS1的形式,系数有Cij组成,Cij为 ...
- BZOJ [FJOI2007]轮状病毒 (找规律)
1002: [FJOI2007]轮状病毒 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 6009 Solved: 3282[Submit][Statu ...
- WordPaster-HDwik5.0整合教程
示例下载:http://yunpan.cn/Q9ufQGuFMK34r 1.上传WordPaster文件夹 2.上传upload.php文件,这个文件负责接收控件上传的图片,并保存到uploads文件 ...
- mysql-5.7.19 压缩安装 设置密码
初始化完毕后,如果没使用新版本的客户端登入,还会报告类似下面的错误: mysql -uroot -p Enter password: ERROR 1862 (HY000): Your password ...
- The file left unchanged.
This files have types: *.___jb_old___ and *.___jb_bak___ The file left unchanged. You can disable &q ...
- MIT Molecular Biology 笔记1 DNA的复制,染色体组装
视频 https://www.bilibili.com/video/av7973580?from=search&seid=16993146754254492690 教材 Molecular ...
- Flash网页小游戏开发教程
架设服务器 地图 程序员
- [转]Android中Intent传递对象的两种方法(Serializable,Parcelable)
http://blog.csdn.net/xyz_lmn/article/details/5908355 今天要给大家讲一下Android中Intent中如何传递对象,就我目前所知道的有两种方法,一种 ...
- Spring中ApplicationEvent和ApplicationListener封装
1.测试程序EventTest.java,发布一个事件只需要调用FrameEventHolder.publishEvent()方法即可. package com.junge.spring.event; ...
- Windows 下环境变量设置(命令行)
0. 背景 查了一下 SETX 命令可以实现,先简单看了下帮助.以后再写一个实例. 1. SETX /? 输出内容: SetX 有三种使用方式: 语法 1: SETX [/S system [/ ...