「功能笔记」Linux常用Shell命令(终端命令)备忘录
长期更新,空置、缺漏的部分会逐渐补上。未指明时,均为GNU版本。
文件命令
基础操作
ls
默认显示非隐藏文件、以文件名进行排序、文件名有颜色(蓝色文件夹、白色一般文件、绿色可执行文件)。
Cheatsheet:
ls -al ~ # 显示主文件夹下的所有文件(夹);并显示它们的属性与权限。
ls -alF --color=never ~ # 同上,并不显示颜色,在文件名末显示该文件名代表的类型。/表示文件夹,*表示可执行文件
ls -al --full-time ~ # 同1,并显示长时间
ls -si ~ # 显示主文件夹下的所有文件(夹),以及其所在的i-node号码;并排序文件
cp
-i:若目标文件已经存在,覆盖时会询问。-p:复制属性。-d:若文件为link file,复制link file的属性而非源文件本身。-r:递归复制。-a:等价于-pdr。-s:复制为symbolic link。-l:复制为hard link。
Cheatsheet:
cp -r /home/zuiho/ /tmp # 复制主文件夹下的所有内容到/tmp下面
cp -s /path/to/file /new/path/to/dir # 复制文件的symbolic link到新文件夹下。
rm
如果想要不可逆转的删除,使用shred。
-f忽略不存在的文件,不会出现警告信息。-i删除前会询问。-r递归删除。会删除目录。
Cheatsheet:
rm -i /path/to/an/important/file # 会询问。
rm -r /path/to/a/dir # 不会询问,删除目录。
rm ./-aspecialfile- # 删除一个带杠的文件。
mv
这个命令其实往往用来重命名。Linux内还有一个专门的批量重命名的命令,为rename。
-f强制。-i若存在,会询问。-u“update”,即源文件比目标文件更新时才会覆盖。
Cheatsheet:
mv originfile /path/to/dest
mv of1 of2 of3 /path/to/dest # 最后一个是文件夹,前面的是文件,则可以批量移动。
其他命令
basename取得文件名dirname取得目录名
touch
最基础的用法是用来创造一个空文件。
不过,它是用来修改文件时间的。
a修改访问时间。c仅修改时间,若文件不存在不创建新文件。d自定义修改的日期。 长命令形式为--date=<DATE>。m修改mtime,即上一次被修改的时间。t自定义修改的时间,格式为[YYMMDDhhmm]。
Cheatsheet:
touch -d "2 days ago" .zshrc
touch -t "0805121428" .bashrc #修改时间为一个悲伤的时刻。
file
查看文件
cat & tac & nl
more & less
head & tail
od
权限管理
umask
chattr/lsattr
查找
which/whereis/locate
find
磁盘管理
管道命令
xargs
综合应用示例
显示系统目前支持的文件系统
cat /proc/filesystems
删除文件夹内所有无后缀名可执行文件并删除之
find . -type f -perm /u+x -regex "\./[^/.]*" | xargs rm -f
(伪)图形化克隆磁盘
(pv -n /dev/sda | dd of=/dev/sdb bs=128M conv=notrunc,noerror) 2>&1 | dialog --gauge "Running dd command (cloning), please wait..." 10 70 0
监控所有被进程ID:1551 所使用的文件
pv -d 1551
fork bomb
# DO NOT TRY IT IN THE PRODUCTION ENVIROUMENT!!!
:(){ :|:& };:
有趣的命令
牛力与否
apt moo # And you can try it in openSUSE!!!
zypper moo
「功能笔记」Linux常用Shell命令(终端命令)备忘录的更多相关文章
- 「功能笔记」性能分析工具gprof使用笔记
根据网上信息整理所成. 功能与优劣 gprof实际上只是一个用于读取profile结果文件的工具.gprof采用混合方法来收集程序的统计信息,它使用检测方法,在编译过程中在函数入口处插入计数器用于收集 ...
- 「功能笔记」Spacemacs+Evil备忘录
设置代理 (setq url-gateway-method 'socks) (setq socks-server '("Default server" "127.0.0. ...
- [转帖]「日常小记」linux中强大且常用命令:find、grep
「日常小记」linux中强大且常用命令:find.grep https://zhuanlan.zhihu.com/p/74379265 在linux下面工作,有些命令能够大大提高效率.本文就向大家介绍 ...
- Linux常用Shell脚本珍藏【转载】
我们在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运维常用的脚本.如何学好脚本,最关键的 ...
- 「学习笔记」字符串基础:Hash,KMP与Trie
「学习笔记」字符串基础:Hash,KMP与Trie 点击查看目录 目录 「学习笔记」字符串基础:Hash,KMP与Trie Hash 算法 代码 KMP 算法 前置知识:\(\text{Border} ...
- 「学习笔记」Treap
「学习笔记」Treap 前言 什么是 Treap ? 二叉搜索树 (Binary Search Tree/Binary Sort Tree/BST) 基础定义 查找元素 插入元素 删除元素 查找后继 ...
- 「学习笔记」Min25筛
「学习笔记」Min25筛 前言 周指导今天模拟赛五分钟秒第一题,十分钟说第二题是 \(\text{Min25}\) 筛板子题,要不是第三题出题人数据范围给错了,周指导十五分钟就 \(\text{AK ...
- 「学习笔记」FFT 之优化——NTT
目录 「学习笔记」FFT 之优化--NTT 前言 引入 快速数论变换--NTT 一些引申问题及解决方法 三模数 NTT 拆系数 FFT (MTT) 「学习笔记」FFT 之优化--NTT 前言 \(NT ...
- 「学习笔记」FFT 快速傅里叶变换
目录 「学习笔记」FFT 快速傅里叶变换 啥是 FFT 呀?它可以干什么? 必备芝士 点值表示 复数 傅立叶正变换 傅里叶逆变换 FFT 的代码实现 还会有的 NTT 和三模数 NTT... 「学习笔 ...
随机推荐
- docker 部署django项目(nginx + uwsgi +mysql)
最近在学习用docker部署Django项目,经过百折不挠的鼓捣,终于将项目部署成功,爬过好多坑,也发现很多技能需要提高.特此写下随笔与小伙伴们分享,希望能对大家有所启发. docker的理论我就不赘 ...
- 给 Virtualbox 中 Ubuntu 系统设置静态 IP
虚拟机网络选择 桥接网卡 模式. 主要涉及两个步骤: 1. 修改 /etc/network/interfaces 文件: 2. 修改 dns : 第一步,修改 interfaces 文件: sudo ...
- BZOJ1434:[ZJOI2009]染色游戏(博弈论)
Description 一共n×m个硬币,摆成n×m的长方形.dongdong和xixi玩一个游戏,每次可以选择一个连通块,并把其中的硬币全部翻转,但是需要满足存在一个硬币属于这个连通块并且所有其他硬 ...
- 20155314 2016-2017-2 《Java程序设计》第3周学习总结
20155314 2016-2017-2 <Java程序设计>第3周学习总结 教材学习内容总结 学习目标 区分基本类型与类类型 理解对象的生成与引用的关系 掌握String类和数组 理解封 ...
- Docker删除/停止容器
应用场景:某个相关的业务需要重启,容器太多了,一个一个通过命令行来关闭太麻烦了,直接一条命令直接搞定. 命令如下: $ docker ps // 查看所有正在运行容器 $ docker stop co ...
- NSPredicate的使用
简述 NSPredicate谓词条件过滤器,一般用于过滤数组数据,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取. 常用函数 创建谓词 + (NSPredicate *)predic ...
- 多线程之并发容器ConcurrentHashMap
这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能.因为同步 ...
- R函数-时间序列ETS参数说明
alpha\beta\gamma分别代表水平.趋势.季节分量的平滑参数α.β.γ.这三个参数我们希望接近于0,以便于更平滑,即越小越平滑.在乘法模型的情况下,参数需要非常低,否则模型会对噪声太敏感. ...
- PAT乙级1009
1009 说反话 (20 分) 给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式: 测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串.字符串由若干单词和若干 ...
- Debian 8 时间同步
每天执行一次 sudo ntpdate ntp.ubuntu.com 逐渐觉得麻烦了,有没有自动执行的方法? 在Linux中用户可以执行例行性的工作,使用crontab这个命令. 步骤: 1.在终端中 ...