如何高效使用Linux常用命令进行文件管理?

摘要:参考 最牛B的Linux Shell命令 杂项 ssh免密登录 ssh-copy-id remote-machine 比如 ssh-copy-id pengdl@localhost -p 8765 这个命令把当前用户的公钥串写入到远程主机的
参考 最牛B的Linux Shell命令 杂项 ssh免密登录 ssh-copy-id remote-machine 比如 ssh-copy-id pengdl@localhost -p 8765 这个命令把当前用户的公钥串写入到远程主机的~/.ssh/authorized_keys内,这样下次使用ssh登录的时候,远程主机就直接根据这串密钥完成身份校验,不再询问密码了。前提是你当前用户有生成了公钥,默认是没有的,先执行ssh-keygen试试吧! 也可以手动完成: your-machine$ scp ~/.ssh/identity.pub remote-machine: your-machine$ ssh remote-machine remote-machine$ cat identity.pub >> ~/.ssh/authorized_keys 如果你想删掉远程主机上的密钥,直接打开authorized_keys,搜索你的用户名,删除那行,即可. 清空文件 > file 以HTTP方式共享当前文件夹的文件 python -m SimpleHTTPServer 8080 这命令启动了Python的SimpleHTTPServer模块,考虑到Python在绝大多数的Linux发行版当中都默认安装,所以这个命令很可能是最简单的跨平台传文件的方法。 命令执行后将在本机8000端口开放HTTP服务,在其他能访问本机的机器的浏览器打开ttp://ip:8000即打开一个目录列表,点击即可下载。 python3的话 python3 -m http.server 8080 以sudo运行上条命令 sudo !! 显示当前目录中所有子目录的大小 du -h --max-depth=1 当前目录下的文件和子目录按大小排序 du -sb * | sort -g | numfmt --to=iec du -sh * | sort -rh | head -n 10 在以普通用户打开的vim当中保存一个root用户文件 :w !sudo tee % 这题目读起来纠结,其实是很常见的,常常忘记了sudo就直接用vim编辑/etc内的文件,(不过也不一定,vim发现保存的文件无法保存时候会提示)等编辑好了,保存时候才发现没权限。曲线方法是先保存个临时文件,退出后再sudo cp回去。不过实际上在vim里面可以直接完成这个过程的,命令就是如此。 查阅vim的文档(输入:help :w),会提到命令:w!{cmd},让vim执行一个外部命令{cmd},然后把当前缓冲区的内容从stdin传入。tee是一个把stdin保存到文件的小工具。而%,是vim当中一个只读寄存器的名字,总保存着当前编辑文件的文件路径。 所以执行这个命令,就相当于从vim外部修改了当前编辑的文件,好完工。 快速备份一个文件 $ cp filename{,.bak} 这道命令把filename文件拷贝成filename.bak,大家应该在一些比较复杂的安装教程里面见过这样的用法。其原理就在于bash对大括号的展开操作,filename{,.bak}这一段会被展开成filename filename.bak再传给cp,于是就有了备份的命令了。 想知道一台服务器什么时候重启完 ping -a IP 系统管理员最常做的事情是重启系统。但是服务器的重启过程往往得花上好几分钟,什么你的服务器4个scsi卡?16个硬盘?系统是Redhat?还完全安装所有组件?好吧,它重启的时间都够你吃顿饭了,所以我很想知道它什么时候回来。ping命令有个audible ping参数,-a,当它终于ping通你的服务器时会让小喇叭叫起来。
阅读全文