基础使用:
当输入带空格传参时,需要用引号括起来,或者像上面一样进行转义。否则会被认为是传入两个参数
shell通过环境变量确认调取程序的位置,而bash本身就是就是一种编程语言,也就可以被用来写一些脚本。而且环境很多环境变量是在shell开始之前就已经设定好的:作为分割
- 打印当前位置,cd用于切换目录 /(根目录) ../(上级目录) ./(当前目录)
- ~/(home目录,或者说主目录)
- cd -返回上次查看的目录(撤回键?)
[]是可选项 ...是一个或多个参数
读写执行 rwx三个权限
值得注意的是,当你对文件有写入权限,而对其所在的目录没有写入权限时,你可以清空文件而不能进行删除。当你要执行某个程序时,你需要同时拥有文件和其所有父目录的执行权限
可以用作给文件重命名
或者是移动文件(不是复制,是移动)
rm 文件地址 -r可以递归性的删除文件(可以删除整个目录)
rmdir可以删除空目录
echo hello > hello.txt输出hello将结果流重定向到hello.txt里
cat hello2.txt 读取hello的文件内容,将流输出到hello2.txt里,这时如果用>>的话,会在文件末尾进行追加,而不是对文件进行覆盖
管道符两侧的程序相互是不知道的 ,也就是说,互相只是发送或者获取相对应的数据流
ls - l |tail -n1将ls输出的流通过管道符传给tail,tail中-n+数字,来确认输出最后几行
tail在ctf的rce中被用于一些文件读取,当然这个和本篇文章无关
这是一个内核目录,内部包含与硬件进行交互的文件,像是调整亮度,点亮某个灯等等
这里我们需要root权限,我们可以用sudo来临时调用root权限
echo 1060 | sudo tee brightness
xdg-open hello2.txt 用于寻找适当的程序打开文件
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |