杂七杂八
杂七杂八
配置文件位置
常用于查看路由转发,可能把flag藏到哪个路径
nginx
1 | /usr/local/nginx/conf/nginx.conf |
apache
1 | /etc/httpd/conf/httpd.conf |
日志文件位置
可以用于日志包含拿shell
nginx
1 | /var/log/nginx/access.log |
apache
1 | /var/log/apache/access.log |
iis日志文件:
1 | %systemroot%\system32\logfiles\ |
查看文件内容
1 | Linux:cat、tac、more、less、head、tail、nl、sed、sort、uniq、rev |
Linux下的一些特性
一些符号
1 | * # 通配符,匹配任意字符 |
Linux下的引号
linux中的单引号、双引号和反引号的特性
单引号:会将其中内容都当做字符串,忽略所有命令和特殊字符
双引号:会解析其中的特殊字符和变量,如果要原样输出特殊字符需要用
\
转义反引号:会将反引号中的字符串当作命令执行,反引号类似
$(command)
shell中有两种方法作命令替换:把shell命令用反引号或者$(…)
结构括起来,其中,$(…)
格式受到POSIX标准支持,也利于嵌套。
反斜杠:
反斜杠一般用作转义字符,或称逃脱字符,
Linux如果echo要让转义字符发生作用,就要使用-e选项,
且转义字符要使用双引号echo -e “\n”
反斜杠的另一种作用,就是当反斜杠用于一行的最后一个字符时,
Shell把行尾的反斜杠作为续行,这种结构在分几行输入长命令时经常使用。
linux shell中的特殊符号
$()和 `` :命令替换
- `` 基本可在所以unix shell中使用,而 $() 不是所有shell都支持
${}:变量替换
$var
和${var}
效果类似,但 ${ }
能更精确的界定变量名称的范围
如下,使用echo $ab
想要输出的是$a的内容+字符b
,但是会被解析成$ab
一些更深入的用法:https://blog.csdn.net/x1269778817/article/details/46535729
$?
$?表示上一条命令执行结束后的传回值。
- 通常0代表执行成功
- 非0代表执行有误
$IFS
$IFS - Linux Shell Scripting Wiki (cyberciti.biz)
Shell中的IFS解惑_Simple life-CSDN博客
简而言之,$IFS的默认值是 space, tab, newline
>/dev/null
/dev/null代表linux的空设备文件,所有往这个文件里面写入的内容都会丢失
在执行了>/dev/null
后,标准输出就会不再存在, 没有任何地方能够找到输出的内容。