####2.grep####
grep 关键字符 文件|目录 ##在文件或者目录中查找含有关键字的行
grep -i ##忽略大小写
-n ##显示关键字所在行
-c ##显示过滤结果的个数
-v ##反向过滤
-E “关键字1|关键字2” #过滤多个关键字
-r 目录 ##在目录中查找含有关键字的文件
^root 以root开头的
root$ 以root结尾的
ifconfig eth0 | grep inet | grep inet6 -v | awk -F " " '{print $2}'
####3.cut####
cut ##截取字符
cut -d 分隔符 ##指定分隔符
cut -f 1,7 ##显示指定的列
cut -c 1-4 ##显示指定的字符
####4.sort####
sort
-n ##纯数字排序
-u ##去冗余
|uniq -c ##去冗余并统计冗余次数
-t ##指定分隔符
-k ##指定列
####5.uniq####
sort file |uniq -c ##去除冗余并统计冗余次数
-d ##显示冗余行
-u ##现实唯一行
####6.sed####
sed 's/源字符串/替换字符/g' file
sed -e '策略1' -e '策略2' file
sed -i file ##把转换后的内容输入到指定的文件
sed '3,5s/源字符/替换字符/g' ##3-5行替换
sed xd ##屏蔽指定行
sed xp ##复制指定行
sed -n xp ##只显示指定行
问题:创建两个文件,分别提取两个文件的每行,作为用户和密码创建用户shell脚本
#!/bin/bash
MAX=$(wc -l $1 | cut -d " " -f 1 )
for NUM in $(seq $MAX)
do
USERNAME=$(sed -n ${NUM}p $1)
PASSWD=$(sed -n ${NUM}p $2)
useradd $USERNAME
echo $PASSWD | passwd --stdin $USERNAME
done
####硬盘划分####
fdisk -l ##连接在电脑上的设备
cat /proc/partitions ##电脑识别的设备
blkid ##电脑可以用的设备
fdisk /dev/sdb ##这里以sdb为例子
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition ##删除分区
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu ##显示菜单
n add a new partition ##划分一个新分区
o create a new empty DOS partition table
p print the partition table ##显示分区信息
q quit without saving changes ##推出不保存
s create a new empty Sun disklabel
t change a partition's system id ##修改分区功能id
u change display/entry units
v verify the partition table
w write table to disk and exit ##保存更改到分区表中
x extra functionality (experts only)
Command (m for help): n ##划分新分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): ##回车表示默认
Using default response p
Partition number (1-4, default 1): 1 ##指定分区号
First sector (2048-2097151, default 2048): ##分区起始地址(不写表示默认开始)
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): +1M ##指定大小1M
Partition 1 of type Linux and of size 1 MiB is set
Command (m for help): wq ##保存并退出更改
partprobe ##同步分区表
mkfs.xfs /dev/vdb5 ##格式化
mount /dev/vdb5 /mnt ##挂载即可使用
####内存扩展####
swapon -s ##查看内存情况
fdisk /dev/vdb
划分一块区域并更改区域功能标记为swap
mkswap /dev/vdb6 ##格式化swap分区
blkid ##显示可用分区
swapon -a /dev/vdb6 ##添加/dev/vdb6到swap中
swapoff /dev/vdb6 ##从swap中删除/dev/vdb6
另一种添加内存的方法
dd if=/dev/zero of=/mnt/westos bs=1M count=1000
mkswap /mnt/westos
chmod 0600 /mnt/westos ##给权限
swapon -a /mnt/westos -p 1 ##-p指定内存级别
编写文件
vim /etc/fstab
例子:
/dev/vdb6 swap swap defaults 0 0
开机自动挂载内存
grep 关键字符 文件|目录 ##在文件或者目录中查找含有关键字的行
grep -i ##忽略大小写
-n ##显示关键字所在行
-c ##显示过滤结果的个数
-v ##反向过滤
-E “关键字1|关键字2” #过滤多个关键字
-r 目录 ##在目录中查找含有关键字的文件
^root 以root开头的
root$ 以root结尾的
ifconfig eth0 | grep inet | grep inet6 -v | awk -F " " '{print $2}'
####3.cut####
cut ##截取字符
cut -d 分隔符 ##指定分隔符
cut -f 1,7 ##显示指定的列
cut -c 1-4 ##显示指定的字符
####4.sort####
sort
-n ##纯数字排序
-u ##去冗余
|uniq -c ##去冗余并统计冗余次数
-t ##指定分隔符
-k ##指定列
####5.uniq####
sort file |uniq -c ##去除冗余并统计冗余次数
-d ##显示冗余行
-u ##现实唯一行
####6.sed####
sed 's/源字符串/替换字符/g' file
sed -e '策略1' -e '策略2' file
sed -i file ##把转换后的内容输入到指定的文件
sed '3,5s/源字符/替换字符/g' ##3-5行替换
sed xd ##屏蔽指定行
sed xp ##复制指定行
sed -n xp ##只显示指定行
问题:创建两个文件,分别提取两个文件的每行,作为用户和密码创建用户shell脚本
#!/bin/bash
MAX=$(wc -l $1 | cut -d " " -f 1 )
for NUM in $(seq $MAX)
do
USERNAME=$(sed -n ${NUM}p $1)
PASSWD=$(sed -n ${NUM}p $2)
useradd $USERNAME
echo $PASSWD | passwd --stdin $USERNAME
done
####硬盘划分####
fdisk -l ##连接在电脑上的设备
cat /proc/partitions ##电脑识别的设备
blkid ##电脑可以用的设备
fdisk /dev/sdb ##这里以sdb为例子
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition ##删除分区
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu ##显示菜单
n add a new partition ##划分一个新分区
o create a new empty DOS partition table
p print the partition table ##显示分区信息
q quit without saving changes ##推出不保存
s create a new empty Sun disklabel
t change a partition's system id ##修改分区功能id
u change display/entry units
v verify the partition table
w write table to disk and exit ##保存更改到分区表中
x extra functionality (experts only)
Command (m for help): n ##划分新分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): ##回车表示默认
Using default response p
Partition number (1-4, default 1): 1 ##指定分区号
First sector (2048-2097151, default 2048): ##分区起始地址(不写表示默认开始)
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): +1M ##指定大小1M
Partition 1 of type Linux and of size 1 MiB is set
Command (m for help): wq ##保存并退出更改
partprobe ##同步分区表
mkfs.xfs /dev/vdb5 ##格式化
mount /dev/vdb5 /mnt ##挂载即可使用
####内存扩展####
swapon -s ##查看内存情况
fdisk /dev/vdb
划分一块区域并更改区域功能标记为swap
mkswap /dev/vdb6 ##格式化swap分区
blkid ##显示可用分区
swapon -a /dev/vdb6 ##添加/dev/vdb6到swap中
swapoff /dev/vdb6 ##从swap中删除/dev/vdb6
另一种添加内存的方法
dd if=/dev/zero of=/mnt/westos bs=1M count=1000
mkswap /mnt/westos
chmod 0600 /mnt/westos ##给权限
swapon -a /mnt/westos -p 1 ##-p指定内存级别
编写文件
vim /etc/fstab
例子:
/dev/vdb6 swap swap defaults 0 0
开机自动挂载内存