待整理

See how to indentify them.
The attacker might have aliased the privileged command with his/her own custom command to steal the critical information that is provided by the user to the command.


用tput sc存储光标的位置。
在每次循环中,我们通过恢复之前存储的光标位置,在终端中打印出新的count值。
tput rc:恢复光标位置
tput ed清除从当前光标位置到行尾之间的所有内容。


Shebang hack
The shebang can be changed from #!/bin/bash to #!/bin/bash -xv to enable
debugging without any additional flags (-xv flags themselves).
这句话的意思是,如果脚本开头是#!/bin/bash,那么当我们想要调试时,我们需要使用-xv这个参数。但是当脚本开头是#!/bin/bash -xv开头时,就可以直接开启debug模式了。



[root@server4 ~]# mkdir backup
[root@server4 ~]# ll
total 1
drwxr-xr-x. 2 root root        6 Jul 25 18:55 backup

做删除
[root@server4 ~]# alias rm='cp $@ ~/backup && rm $@'

[root@server4 ~]# rm -rf out.txt 
cp: missing destination file operand after ‘/root/backup’
Try 'cp --help' for more information.
[root@server4 ~]# cd backup/
[root@server4 backup]# pwd
/root/backup

[root@server4 backup]# rm  out.txt 
cp: missing destination file operand after ‘/root/backup’
Try 'cp --help' for more information.

[root@server4 ~]# alias copy='cp $@ ~/backup'
[root@server4 ~]# ll
total 140284
-rw-r--r--. 1 root root       92 Jul 13 16:46 1
-rwxr-xr-x. 1 root root      339 Jul 17 13:54 addScalaHome.sh
-rwxr-xr-x. 1 root root      377 Jul 11 20:58 adjustSysctlConf.sh
-rw-------. 1 root root     1260 Jun 16 01:12 anaconda-ks.cfg
drwxr-xr-x. 2 root root        6 Jul 25 18:55 backup
-rw-r--r--. 1 root root        9 Jul 20 21:02 cal
-rwxr-xr-x. 1 root root       99 Jul 20 20:39 checkUser.sh
-rwxr-xr-x. 1 root root      115 Jul 13 17:00 checkZookeeper.sh
-rwxr-xr-x. 1 root root      155 Jul 22 17:20 closeZookeeper.sh
drwxr-xr-x. 4 root root       37 Jul 13 11:01 hadoop_temp
-rw-r--r--. 1 root root       54 Jul  4 14:11 HelloLinux.txt
-rw-r--r--. 1 root root       42 Jul 22 20:56 hosts
-rwxr-xr-x. 1 root root       93 Jul 13 17:16 jps.sh
-rw-r--r--. 1 root root       67 Jul 25 11:24 log.txt
-rw-r--r--. 1 root root 78066230 Jul 13 17:36 opentsdb-2.3.0.tar.gz
drwxr-xr-x. 3 root root     8192 Jul 22 16:21 openTSDB_temp
-rw-r--r--. 1 root root       15 Jul 25 14:22 output.txt
-rw-r--r--. 1 root root      216 Jul 23 22:00 out.txt
-rwxr-xr-x. 1 root root       71 Jul 22 16:56 reboot.sh
-rw-r--r--. 1 root root 28678231 Mar  4  2016 scala-2.11.8.tgz
-rwxr-xr-x. 1 root root      267 Jul 13 17:01 startZookeeper.sh
-rw-r--r--. 1 root root       58 Jul 23 09:43 stderr.txt
-rw-r--r--. 1 root root        0 Jul 23 09:43 stdout.txt
-rw-r--r--. 1 root root     3497 Jul 20 19:19 temp
-rwxr-xr-x. 1 root root      138 Jul 20 14:40 test2.sh
-rwxr-xr-x. 1 root root      102 Jul 25 11:22 test3.sh
-rwxr-xr-x. 1 root root       98 Jul 20 14:41 test.sh
-rw-r--r--. 1 root root     3454 Jul 22 21:05 test.zip
-rw-r--r--. 1 root root 36670230 Jul  7 15:36 zookeeper-3.4.11.tar.gz
-rw-r--r--. 1 root root   124241 Jul 22 20:55 zookeeper.out
[root@server4 ~]# copy stdout.txt 
cp: omitting directory ‘/root/backup’

[root@server4 ~]# hello
[root@server4 ~]# 
[root@server4 ~]# tput cols
[root@server4 ~]# 
[root@server4 ~]# tput lines
[root@server4 ~]# 
[root@server4 ~]# tput lines
[root@server4 ~]# 
[root@server4 ~]# tput cols
[root@server4 ~]# 
[root@server4 ~]# tput logname
[root@server4 ~]# info capability 'logname'
[root@server4 ~]# tput longname
[root@server4 ~]# lator (X Window System)[root@server4 ~]# 
[root@server4 ~]# 
[root@server4 ~]# tput cup 100 100
[root@server4 ~]#                                                                                   [
[root@server4 ~]# tput cup 10 10
[root@server4 ~]# 
[root@server4 ~]# tput setb n
[root@server4 ~]# tput setb 2
[root@server4 ~]# tput setb 0
[root@server4 ~]# hello
hello
[root@server4 ~]# hello
hello
[root@server4 ~]# owca 
bash: owca: command not found...
[root@server4 ~]# tput setb 1
[root@server4 ~]# echo this
this
[root@server4 ~]# echo this
this
[root@server4 ~]# haha 
bash: haha: command not found...
[root@server4 ~]# tput smul
[root@server4 ~]# tput rmul
[root@server4 ~]# ll
total 140288
-rw-r--r--. 1 root root       92 Jul 13 16:46 1
-rwxr-xr-x. 1 root root      339 Jul 17 13:54 addScalaHome.sh
-rwxr-xr-x. 1 root root      377 Jul 11 20:58 adjustSysctlConf.sh
-rw-------. 1 root root     1260 Jun 16 01:12 anaconda-ks.cfg
drwxr-xr-x. 2 root root        6 Jul 25 18:55 backup
-rw-r--r--. 1 root root        9 Jul 20 21:02 cal
-rwxr-xr-x. 1 root root       99 Jul 20 20:39 checkUser.sh
-rwxr-xr-x. 1 root root      115 Jul 13 17:00 checkZookeeper.sh
-rwxr-xr-x. 1 root root      155 Jul 22 17:20 closeZookeeper.sh
drwxr-xr-x. 4 root root       37 Jul 13 11:01 hadoop_temp
-rw-r--r--. 1 root root       54 Jul  4 14:11 HelloLinux.txt
-rw-r--r--. 1 root root       42 Jul 22 20:56 hosts
-rw-r--r--. 1 root root     1308 Jul 25 21:13 initial-setup-ks.cfg
-rwxr-xr-x. 1 root root       93 Jul 13 17:16 jps.sh
-rw-r--r--. 1 root root       67 Jul 25 11:24 log.txt
-rw-r--r--. 1 root root 78066230 Jul 13 17:36 opentsdb-2.3.0.tar.gz
drwxr-xr-x. 3 root root     8192 Jul 22 16:21 openTSDB_temp
-rw-r--r--. 1 root root       15 Jul 25 14:22 output.txt
-rw-r--r--. 1 root root      216 Jul 23 22:00 out.txt
-rwxr-xr-x. 1 root root       71 Jul 22 16:56 reboot.sh
-rw-r--r--. 1 root root 28678231 Mar  4  2016 scala-2.11.8.tgz
-rwxr-xr-x. 1 root root      267 Jul 13 17:01 startZookeeper.sh
-rw-r--r--. 1 root root       58 Jul 23 09:43 stderr.txt
-rw-r--r--. 1 root root        0 Jul 23 09:43 stdout.txt
-rw-r--r--. 1 root root     3497 Jul 20 19:19 temp
-rwxr-xr-x. 1 root root      138 Jul 20 14:40 test2.sh
-rwxr-xr-x. 1 root root      102 Jul 25 11:22 test3.sh
-rwxr-xr-x. 1 root root       98 Jul 20 14:41 test.sh
-rw-r--r--. 1 root root     3454 Jul 22 21:05 test.zip
-rw-r--r--. 1 root root 36670230 Jul  7 15:36 zookeeper-3.4.11.tar.gz
-rw-r--r--. 1 root root   124241 Jul 22 20:55 zookeeper.out





[root@server4 ~]# echo \\
\

输出当前日期
[root@server4 ~]# date +%s
1532525664



[root@server4 ~]# cat out.txt
HelloLinux
/root
this is third line.added in 20180704
HelloLinux
/root
this is third line.added in 20180704
HelloLinux
/root
this is third line.added in 20180704
HelloLinux
/root
this is third line.added in 20180704
Thu Jul 26 10:22:01 CST 2018
Thu Jul 26 10:23:01 CST 2018
[root@server4 ~]# 


[root@server4 cron]# cat root 
* * * * * /bin/echo `date` >> /root/out.txt
[root@server4 cron]# 



`echo > file`【echo 12 >> file2】命令:
1.即使当前目录下没有file文件,也会自己创建一个file文件
[littlelawson@server4 test]$ ll
total 0
[littlelawson@server4 test]$ echo 12 > file1
[littlelawson@server4 test]$ ll
total 4
-rw-rw-r--. 1 littlelawson littlelawson 3 Jul 27 10:14 file1

unalias vi
问题:vi 打开文件时,蓝色字体和黑色背景导致阅读困难
原因:有时候并不是因为系统的原因,而是因为xshell的字体风格设置的原因。
解决办法:调整xshell的配色方案。

dd连敲两行


###shell脚本攻略学习笔记之六
concatenate content from input files along with standard input using cat. Combine stdin and data from another file,as follows:
echo 'Text through stdin' | cat - file.txt

cat 
-s --squeeze-blank
    suppress repeated empty output lines/squeeze adjacent blank lines.[压缩连续的空行]
-T, --show-tabs
    display TAB characters as ^I[将TAB键展示城^I]

[root@server4 ~]# cat file.py
def function()
	var = 5;
           next = 6
	third = 7
[root@server4 ~]# cat -T file.py
def function()
^Ivar = 5;
           next = 6
^Ithird = 7

-n, --number
    number all output lines【显示出行号,包括空行】

-b, --number-nonblank
    number nonempty output lines, overrides -n【输出行号,不包括空行】

	
Recording and playing back of terminal sessions
这里的意思就是:如果需要查看过去的终端回话的的历史,那么我们可以将我们执行的命令存放到某个文件件中,以供后期查看。

[root@server4 ~]# script
Script started, file is typescript
[root@server4 ~]# echo hello
hello
[root@server4 ~]# exit
exit
Script done, file is typescript
[root@server4 ~]# ll
total 1
-rw-r--r--. 1 root root      241 Aug  5 11:59 typescript
[root@server4 ~]# cat typescript
Script started on Sun 05 Aug 2018 11:54:28 AM CST
[root@server4 ~]# echo hello
hello
[root@server4 ~]# exit
exit

Script done on Sun 05 Aug 2018 11:59:17 AM CST

script 
 -a, --append
    Append the output to file or typescript, retaining the prior contents.【追加输出到file或者是typescript中,保留之前的内容】