标签:contain 删除 directory 正则 $1 区域 type tab currently
1.1 请详细描述linux系统从打开主机电源到进入登录界面整个过程的流程。BIOS开机自检
mbr引导
grub菜单
加载内核
运行init进程
读取/etc/inittab配置文件
执行/etc/rc.d/rc.sysinit进程
执行/etc/re.d/rc进程
进入登录界面
[root@oldboyedu ~]# cd /data/oldboyedu
-bash: cd: /data/oldboyedu: No such file or directory
1.为何出现这样的错误
这个目录不存在
2.如何解决这个错误呢?
创建目录
mkdir -p /data/oldboyedu
方法1
cat >>oldboyedu/oldboy.txt<<eof
I love studying Linux.
eof
方法2
echo ' I love studying Linux.' >/data/oldboyedu/oldboy.txt
a)说说这些特殊符号含义: \ > >> 2> 2>> #(井号) .(点) ..(两个点) ~ * $ |
\ 转义字符 撬棍 脱掉马甲打回原形(或类似含义)
> 重定向符号 先清空文件内容,然后追加内容(或类似含义)
>> 追加重定向 追加到文件结尾(或类似含义)
2> 错误输出重定向
2>> 错误输出追加重定向
# 井号 注释或root用户命令提示符或sed分隔符(sed 's###g')
. 当前目录 或 正则任何一个字符 或 用于生效
.. 当前目录的上级目录
~ 当前用户家目录
* 所有字符或任意字符或正则表达式表示前一个字符连续出现0次或0次以上
$ 取变量内容 或 正则以...结尾
| 管道 或 正则表示或者
b)test.txt内容为:
trainning
fanbingbing
lidao
方法1
grep -v 'trainning' test.txt #不加引号也行
方法2
tail -2 test.txt
方法3
sed '/trainning/d' test.txt
方法4
awk '!/trainning/' test.txt
1)命令行测试
alias rm='echo command is not allowd to use'
2)永久生效
写入/etc/profile
3)生效
source /etc/profile
注:ett.txt由seq 20 120>ett.txt创建
方法1
sed -n '30,40p' ett.txt
方法2
awk 'NR==30,NR==40' ett.txt
方法3
head -40 ett.txt|tail -11
方法4
awk 'NR>=30&&NR<=40' ett.txt
/var/log/messages 系统默认日志(系统日志也行)
/var/log/secure 系统安全日志或用户的登录情况
/etc/hosts ip地址与主机名(域名)对应关系 或 用于解析主机名
/etc/fstab 开机自动挂载
/var/spool/cron/root定时任务配置文件
/etc/rc.local 开机自启动配置
ls /var/log|wc -l
find /var/log|wc -l
Buffer | 缓冲区 | 数据写入到内存的buffer区域 | 写buffer |
Cache | 缓存区 | 从内存中的cache区域进行读取 | 读cache |
方法1
find /data -type d -name "oldboy" |xargs tar zcf /tmp/oldboy.tar.gz
方法2
find /data -type d -name "oldboy" -exec tar zcf /tmp/oldboy.tar.gz {} +
方法3
tar zcf /tmp/oldboy.tar.gz `find /data -type d -name "oldboy"`
tar zcf /tmp/oldboy.tar.gz $(find /data -type d -name "oldboy")
tar zcf 创建压缩包 或zcvf
xf 解压 或 zxvf
tf 查看 或 ztf
-C 解压到指定目录
--exclude 排除
--exclude-from或-X 根据文件内容排除文件
zip -r 压缩目录
查看端口22是否开启
ss -lntup |grep 22
netstat -lntup|grep 22
telnet ip地址 22
nc ip地址 22
nmap -p22 ip地址
lsof -i:22
ps -ef |grep 22#这是错误的
查看进程是否存在
ps -ef |grep sshd
方法1
find /data -type f -mtime +7 -size +100k -exec cp {} /tmp \;
方法2
cp ` find /data -type f -mtime +7 -size +100k ` /tmp
cp $( find /data -type f -mtime +7 -size +100k ) /tmp
方法3
find /data -type f -mtime +7 -size +100k |xargs cp -t /tmp
方法4
find /data -type f -mtime +7 -size +100k |xargs -i cp {} /tmp
sed 's#123#def#g' b.txt
网卡: /etc/sysconfig/network-scripts/ifcfg-eth0
DNS: /etc/resolv.conf /etc/sysconfig/network-scripts/ifcfg-eth0
linux运行状态
0 关机
1 单用户模式
2 多用户模式没有NFS
3 命令行模式 文本模式 多用户模式
4 没有使用
5 图形化界面模式 桌面模式
6 重启
1.ping baidu.com 检查是否能上网
2.ping 223.5.5.5 检查是否DNS问题
3.ping 网关 检查是否配置或其他问题
或
故障原因
1.检查配置文件
2.虚拟网络编辑器
3.vmware服务
4.vmware虚拟网卡问题
【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
【软连接】
另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
方法1
egrep -v '^$|^#' /etc/inittab
方法2
sed -r '/^$|^#/d' /etc/inittab
方法3
awk '!/^$|^#/' /etc/inittab
awk -F: '{print $1,$3,$5}' /etc/passwd
把光标移动到文件的第1行
gg
1G
:1
把光标移动到文件的最后一行
G
:$
把光标移动到文件的第100行
100gg
100G
:100
把光标移动到这一行的行首
0(数字0)
^
把光标移动到这一行的结尾
$
测试文件
cat /etc/services /etc/sysconfig/network-scripts/ifcfg-eth0 >>/tmp/vim.log
编辑(移动并编辑)
在当行下面插入一个空行并进入编辑模式
o(小写字母o)
在当行上面插入一个空行并进入编辑模式
O(大写字母O)
删除光标所在位置到行尾的内容并进入编辑模式
C(大写字母C)
删除光标所在位置到行尾的内容
D d$
快速到达行尾并进入编辑模式
A
复制 删除 粘贴
复制光标所在行
yy
粘贴
p
多次粘贴
3p
删除/剪切
dd
删除当前行到文件结尾的内容
dG
其他
显示行号
:set nu
取消显示行号
:set nonu
查找
/你要找的内容
默认向下搜索
继续向下查找
n
继续向上查找
N
?你要找的内容
默认向上搜索
撤销当前操作
u
undo
恢复刚才的操作
ctrl + r
vim查询帮助
:help G
:help :wq
:h G
nu===number
inode满了
找出系统中大于1M的目录,确认后再删除
原因:
文件没有彻底删除导致的(硬链接数为0,进程调用数不为零)
排查:
lsof |grep delete
解决:
重启对应的服务
data +%F_%w_%H_%M_%S
/tmp
find -type -size +50k -size -100k |xargs sed -i ‘s#oldboy#oldgirl#g‘
cp /etc/hosts /etc/hosts.bak
mv /oldboy lidao
方法一:grep -n
grep -n "3306\|1521" /etc/services
方法二:egrep -n
egrep -n "3306\|1521" /etc/services
grep -E "3306|1521" /etc/services
alias grep=’grep --color’
把这句同时写进/root/.bashrc里面,并且执行一下source /root/.bashrc
方法1:cat /oldboy/*.txt
方法2:find /oldboy -type f -name “*.txt” | xargs cat
方法3:find /oldboy/ -type f -name "*.txt" -exec cat {} \;
【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
【软连接】
另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。
基本上解释就是通配符是系统命令使用,一般用来匹配文件名或者什么的用在系统命令中。而正则表达式是操作字符串,以行尾单位来匹配字符串使用的。
还有一点需要注意的是:*在通配符和正则表达式中有其不一样的地方,在通配符中*可以匹配任意的0个或多个字符,而在正则表达式中他是重复之前的一个或者多个字符,不能独立使用的。比如通配符可以用*来匹配任意字符,而正则表达式不行,他只匹配任意长度的前面的字符。
方法1:ifconfig eth0 | grep “10.0.0” | awk -F “:” ‘{print $2}’ | awk -F “ ” ‘{print $1}’
方法2:ifconfig eth0 |awk 'NR==2' |awk -F"addr:|Bcast:" '{print $2}'
grep -v “oldboy”
网卡: /etc/sysconfig/network-scripts/ifcfg-eth0
DNS: /etc/resolv.conf /etc/sysconfig/network-scripts/ifcfg-eth0
oldboy
xizi
xiaochao
egrep -v “^$” /oldboy/test.txt
没有此文件或目录
找不到此命令
要删除的是个非空目录
查找:-type的参数应该只包含一个字母
防火墙没启动
网不通
未知主机baidu.com
安装了这个软件最新版本的包
DNS不可达
无法解析主机www.oldboyedu.com
该帐户目前不可用
对不起,密码不匹配
标签:contain 删除 directory 正则 $1 区域 type tab currently
原文地址:http://blog.51cto.com/13858927/2154144