Linux Shell脚本攻略 -- 网络
DNS
host命令可以列出某个域名的所有ip
nslookup可以指定查询的类型,可以查到DNS记录的生存时间,还可以指定使用哪个DNS服务器进行解释。
可以通过向/etc/hosts中加入条目来实现名字自解析
echo 192.168.0.2 server2 >> /etc/hosts
并行ping
# method 1
for ip in 192.168.0.{1..255};
do
(
ping $ip -c 2 &> /dev/null;
if [ $? -eq 0 ];then
echo $ip is alive
fi
)&
done
wait
# method 2: fping
-a显示出所有活动主机的ip
...
Linux Shell脚本攻略 -- 归档
tar
# 归档
tar -cf output.tar [SOURCES]
# -t列出归档文件中包含的文件
tar -tf archive.tar
# -r追加
tar -rvf original.tar new_file
# 提取
tar -xf archive.tar
tar -xf archive.tar -C /path/to/extraction_directory
# 指定stdout为输出文件
tar -cvf - files | ssh user@hostname "tar -xv -C /path/to/extraction_directory"
# 合并两个归档文件
tar -Af file1.tar file2.tar
# 当文件比归档文件中的同名...
Linux Shell脚本攻略 -- Git
配置
配置Git的时候,加上--global是针对当前用户起作用的,如果不加,那只针对当前的仓库起作用。
配置文件放哪了?每个仓库的Git配置文件都放在.git/config文件中:
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = git@github.com:michaelliao/learngit.git
fetch = +...
Linux Shell脚本攻略 -- 让文本飞
regexper
# position marker anchor 位置标记锚点
# 标志符
A
.
[]
[^]
# 数量修饰符
?
+
*
{n}
{n,m}
{n,}
# other
() 将括号中的内容视为一个整体
|
\
# -c统计匹配的行树
# -n打印行号
# -b打印出匹配内容出现在行中的偏移
# -l打印出匹配该模式的文件名
# -L打印出不匹配该模式的文件名
# -E -v -o
# -R is eqaul to -r
# -e指定多个模式
grep -e "patten1" -e "patten2"
# 打印匹配的数量
echo -e "1 2 3 4\nhello\n 5 6" | ...
Linux Shell脚本攻略 -- 以文件之名
dd
dd if=/dev/zero of=junk.data bs=1M count=1
1B = C
2B = w
512b = B
1024B = K
1024KB = M
1024MB = G
# 利用dd命令可以测试内存操作速度
dd if=/dev/zero of=/dev/null bs=1G count=10
comm命令作用于两个排序过的文件,显示两个文件的差异
# A.txt
apple
orange
gold
silver
steel
iron
# B.txt
orange
gold
cookies
carrot
$comm A.txt B.txt
apple
carrot
cookie...
Linux Shell脚本攻略 -- 命令之乐
cat
cat -s // remove null line
cat -T // display Tab as ^I
cat -n // display line number
script,scriptreplay
script -t 2>timing.log -a output.session // start record
execute some commands
exit
scriptreplay timing.log output.session // replay
find
# find命令工作方式:沿着文件层次结构向下遍历,匹配符合条件的文件,执行相应的操作。默认操作是打印出文件和目录名,即-print选项。
# 可以通过-exec指定你要执行...
Linux Shell脚本攻略 -- 小试牛刀
echo
# 不换行
bogon:_posts liliang$ echo -n hello
hellobogon:_posts liliang$
# 支持转义字符
bogon:_posts liliang$
bogon:_posts liliang$ echo -e "1\t2\t"
1 2
# 打印彩色输出
bogon:_posts liliang$ echo -e "\e[1;31m This is a red text \e[0m"
\e[1;31m This is a red text \e[0m
#\e[1;31是代表红色的转义字符,\e[0m代表重置。
#对于文本颜色:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白...
PXE
PXE is “Preboot eXecution Environment”.
To construct PXE, you need construct tftp-server dhcp-server first.
If you have no bare metal system, you can use virt-install to install a vm through pxe, and you don’t need a dhcp server if do this.
# install tftp,dhcp,syslinux
yum install -y tftp-server dhcp-server syslinux
# setup dhcp-server
# if ...
共计 106 篇文章,14 页。