linux奇技淫巧
用着用着就发现,linux的每个命令都是那么的深奥而富有技巧,实用而淫荡。。真可谓奇技淫巧....
初学的真不易掌握。。。
http://www.cnblogs.com/include/archive/2011/12/31/2308298.html
!eventid 重复历史事件id eventid
!!重复上一个
^aa^bb --- 不需要空格
ls b* 理出b* 目录下的文件
!so 重复最近以so开始的命令
!! & 会在最后一个命令的末尾加上& (可以加上任意内容)
!:0 挑选出命令的名称,而不是整行
!:3 第参数
!^ 第一个参数
!$ 最后一个参数
sudo 这个也是非常难懂难掌握的命令。。
sagtax:
1
sudo -h │ -K │ -k │ -L │ -l │ -V │ -v
2 --- 通过-u制定用户
sudo [-bEHPS] [-p prompt] [-r role] [-t type] [-u username│#uid] [VAR=value]
{-i │ -s │ command}
http://www.cnblogs.com/jisi5789/archive/2013/04/16/3024869.html
sudo !!
Once a user has been authenticated, a timestamp is updated and the user may
then use sudo without a password for a short period of time (5 minutes unless overridden
in sudoers).
有的地方写着每次执行sudo都需要输入密码——只能执行一次啊,有的地方说可以有5分钟空闲idle。。。 我测试是后者
man sudo:
Once a user has been authenticated, a timestamp is updated and the user may
then use sudo without a password for a short period of time (5 minutes unless overridden
in sudoers).
1 从非root用户切换到root权限 ———— 这个时候不需要密码
2 从root用户切换到非root权限 ———— 这也是完全可以的!! 第一次需要 目标用(如root)的密码!、idle5分钟需要密码
5)配置权限
配置权限的格式如下:
USER_FLAGHOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG
如果不需要密码验证的话,则按照这样的格式来配置
USER_FLAGHOST_FLAG=(RUNAS_FLAG) NOPASSWD:COMMAND_FLAG
mv
http://www.cnblogs.com/java07/archive/2011/06/13/3124771.html
语 法:mv [-bfiuv][--help][--version][-S <附加字尾>][-V <方法>][源文件或目录][目标文件或目录]
补充说明:mv移动文件或目录或更改文件或目录名称
参 数:
-b或--backup 若需覆盖文件则覆盖前先行备份
-f或--force 若目标文件或目录与现有文件或目录重复则直接覆盖现有文 件或目录
-i或--interactive 覆盖前先行询问用户
-S<附加字尾>或
--suffix=<附加字尾> 与-b参数并使用指定备份文件所要附加字尾
-u或--update 移动或更改文件名时若目标文件已存且其文件日期比源文件新则覆盖目标文件
-v或--verbose 执行时显示详细信息
测试
# mv -iv aaa/* aab
mv: overwrite `aab/aaa.txt'? y
`aaa/aaa.txt' -> `aab/aaa.txt'
# mv -b aaa/* aab
linux:/opt/software/lktest/aa # ll aab/
total 0
-rw-r--r-- 1 root root 0 Mar 12 16:00 aaa.txt
-rw-r--r-- 1 root root 0 Mar 12 18:11 aaa.txt~
如果出现cannot overwrite directory b/a' with non-directory , 则加-f参数可以解决,
可如果出现mv: cannot move `ac/aab' to `ae/aab': Directory not empty 则,比较麻烦。。
我测试发现默认情况下(不加bifu之类的参数)mv是会覆盖文件的,但是不会覆盖目录(空目录,自然,也是可以的 ):
mv ac/* ae
mv: cannot move `ac/aa' to `ae/aa': Directory not empty
mv: cannot move `ac/aab' to `ae/aab': Directory not empty
mv -f ac/* ae
mv: cannot move `ac/aa' to `ae/aa': Directory not empty
mv: cannot move `ac/aab' to `ae/aab': Directory not empty
mv -u ac/* ae
mv: cannot move `ac/aa' to `ae/aa': Directory not empty
mv: cannot move `ac/aab' to `ae/aab': Directory not empty
mv -b ac/* ae -- 加b参数就好了!
ll -r ae --- 但是它备份了,我想要是不是备份,而是直接覆盖,怎么办?
total 16
-rw-r--r-- 1 root root 0 Mar 12 15:57 asf.txt
drwxr-xr-x 3 root root 4096 Mar 12 18:32 aa~
drwxr-xr-x 2 root root 4096 Mar 12 18:32 aab~
drwxr-xr-x 2 root root 4096 Mar 12 18:22 aab
-rw-r--r-- 1 root root 0 Mar 12 16:00 aaa.txt
drwxr-xr-x 3 root root 4096 Mar 12 16:04 aa
实在是无能为力,---mv本身不支持这样,我搞再久都没事白搭。 (我本以为这么简单的功能,linux 应该有提供的吧,就不断尝试,结果,2小时过去了。。。还是。。)
应该学会变通! ___ 先cp -r aa/* ab; 然后rm -rf aa ---- cp有覆盖已重复文件、文件夹的功能!!
对于cp -r aa/ ab 效果和 cp -r aa ab 是一样的! 只是把aa放置到了ab下面———— 我现在需要的是aa目录下面所有放置到ab目录下面 ,所以cp -r aa/* ab ~!!
—— 对于mv也一样:如果aa是目录,aa和aa/是一个意思。
mv 没有r 选项!!
linux奇技淫巧的更多相关文章
- linux奇技淫巧 4
压缩解压 tar 即可压缩也可以解压 c 压缩 如果没有z.j参数,则表示,只打包,不压缩. 就说, t 查看 z 以gzip方式压缩 相当于 gzip ?.. j 以bzip方式压缩 bzip2 ? ...
- linux奇技淫巧 2
压缩解压==================================================================================== unzip xx.zi ...
- Linux 奇技淫巧
为了整理这些命令,花了我一个晚上的时间,但是不弄明白,我就是不爽啊. 1.cmatrix 命令 黑客帝国,就是酷炫,先按F11全屏效果更佳 安装:luffy@ubuntu:~$ sudo apt-ge ...
- 40个超有趣的Linux命令行彩蛋和游戏
40个有趣的Linux命令行彩蛋和游戏,让你假装成日理万机的黑客高手.附一键安装脚本,在树莓派和ubuntu云主机上亲测成功,有些还可以在Windows的DOS命令行中运行. 本文配套B站视频:40个 ...
- Linux 驱动开发
linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...
- Linux系统中使用netcat命令的奇技淫巧
netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netcat所做的 ...
- linux shell编程-bash的奇技淫巧
本文主要讲bash脚本中容易出错和很少用但是用起来有意想不到效果的部分. 循环: 正常的for循环: for i in a b c 1 2 3; do echo "$i" done ...
- 【奇技淫巧】linux 定时任务 crontab 反弹 shell
日期:2018-11-26 13:47:34 介绍:如何使用定时任务来反弹 shell? 0x01. 基本命令 参数 -e:编辑该用户的计时器设置: -l:列出该用户的计时器设置: -r:删除该用户的 ...
- 深入理解 JavaScript,以及 Linux 下的开发调试工具
前言 JavaScript 是我接触到的第二门编程语言,第一门是 C 语言.然后才是 C++.Java 还有其它一些什么.所以我对 JavaScript 是非常有感情的,毕竟使用它有十多年了.早就想写 ...
随机推荐
- 对button或radiobutton制作样式
制作样式在drawable中进行 (cheakbox)在样式中点击变换图片,<selector> <item android:state_checked="true&quo ...
- ORA-01919
看到这个错误提示再明白不过了,Oracle中某个角色不存在. 不小心把Oracle中的几个重要角色删除掉了(dba,connect,resource),Plsql只能用DBA权限进去,普通权限进不去, ...
- Python小练习五
# 一个简单的数据库 # 字典使用人名作为键.每个人用另一个字典来表示,其键'phone'和'addr'分别表示它们的电话号码和地址. people = { 'Alice':{ ', 'addr': ...
- JS-firstChild,firstElementChild,lastChild,firstElementChild,nextSibling,nextElementSibling
<body> <ul id="ul1"> <li>11111</li> <li>22222</li> < ...
- springboot使用之四:错误页面404处理建议
每个项目可能都会遇到404,403,500等错误代码,如没有错误页面,则会给用户一个很不友好的界面,springboot项目同样也存在这个问题. 但在官方文档并没有相关配置信息,这就要求我们自己来实现 ...
- 找一个四位数,要求该四位数的四倍刚好是该四位数的反序。 即b1b2b3b4 * 4 = b4b3b2b1
找一个四位数,要求该四位数的四倍刚好是该四位数的反序. 即b1b2b3b4 * 4 = b4b3b2b1 解: 第一步,确认最末位 假设 b1b2b3b4 + b4b3b2b1 = [x0]x1x2x ...
- 介绍一些chrome 好用的插件和快捷键
1.AdBlock ★★★ 最受欢迎的Google 浏览器扩充功能,拥有超过8 百万位使用者!阻挡网路上所有的广告. 2.印象笔记 -剪裁 无需多说! 3.豆藤 Bean vine ★★★★ 豆瓣有此 ...
- [Python] Removing a non-empty folder
Removing a non-empty folder You will get an ‘access is denied’ error when you attempt to use os.remo ...
- mavan 命令行创建项目
1)创建简单maven项目 mvn archetype:create -DgroupId=cn.everlook.myweb -DartifactId=myweb -DpackageName=cn.e ...
- NSString格式校验
在项目开发过程中,NSString类型的变量是经常用到的,而且我们常常会对其格式进行对应的各种校验,你比如,在登录注册的时候,需要验证用户名的长度,用户名的字符组成等等,其实现在也有很多第三方提供的N ...