您的位置:首页 > 运维架构 > Shell

liunx基本命令(shell基础优先级调整)

2013-09-13 18:43 369 查看
大家好,这次介绍一些liunx下的网络配置,shell的简单基础优,先级别调整。还有一些命令,大家好好看看吧。
声明:我这个人比较喜欢分享,自己快乐,就是让大家快乐,帖子也一部分是之前我做的学习笔记,也有现在遇到的问题随手记下的,也有突然想起来就写的,别管怎么样都是我自己所学的经历,和经验,希望大家可以一起学习进步。

pid (代表自己 是子进程)
ppid (是父进程)

进程 top \u95f4 \u547d\u4ee4

\u6309m \u662f\u5185\u5b58\u6392\u5e8f
\u6309c \u662fcpu\u6392\u5e8f

PID USER PR NI VIRT PES SHR S %CPU %MEM TIME+ COMMAND
PID值 用户 优先级别 虚拟内存大小 实际内存大小 共享内存大小 状态 占CPU的百分比 占内存百分比 累积CPU时

前台后台切换
并发状态 也就是前台后台一起工作 后台比前台工作要快,但是浪费CPU
[root@localhost ~]# xclock 表
[root@localhost ~]# xclock -update 1 加一个秒针

[root@localhost ~]# xclock -update 1& 丢到后台运行

正在运行的前台程序 转换为后台程序
ctrl+z 停止并丢入后台

查看后台:
jobs

后台的程序在后台继续运行:
bg 1(编号)

前台的程序运行:
fg 1 (编号)

[root@localhost ~]# jobs
[1] Running xclock -update 1 &(后台执行)
[2]- (之前运行的) Running xclock -update 1 (前台运行的)
[3]+ (现在运行的) Running xclock -update 1 &

查看xclock 的 PID
[root@localhost ~]# ps aux | grep xclck

如果在终端上在打开一个文件 如果想看看外面的东西
按 ctrl+z 暂停退出来
按 fg 在前台继续执行

杀掉 进程或者程序:
kill % 1 (pid) 正常杀死
kill -9 1(pid) 强制杀死一个进程或者程序
pkill httpd(服务) 把关于httpd的服务一下都杀死
killall httpd 杀掉httpd的所有进成
xkill (好玩的) 点谁谁死!!
ctrl+ait+ 退格键 重启图形界面

查看进程编号:
kill -l
kill -1 挂起状态(中断了)
kill -9 (他杀 强制杀死)
kill -15 (自杀 正常结束)

--------------------------------------------------------------------

优先级别调整:
最大优先级(-20) 最小优先级(19)
nice -n(nks值) -20 (优先级) httpd(程序或者服务) 这个程序没有执行的时候相当于创建 启动程序的时候用

对pid做调整(2次调整)

renice 10(优先级别) -p(pid) 6020(以前的pid) 正在进行的程序 用pid改优先级别

-------------------------------------------------------------------------

高级命令:

查看passwd 文件的20行
cat /etc
查看hello world的左右方向输出
echo “hello world ” | rev
查看hello world的上下反向输出
echo “hello world ” | tac

显示一个文件里的单词数
wc -l行数 -w单词数 -c字符数

排序
sort aa.txt 按照第一个数字排序
sort -n aa.txt 按照整个数字去排序
sort -u aa.txt 排序去掉重复行
sort -r aa.txt 反向排序
uniq aa.txt 去掉连续的重复行
uniq -u aa.txt 显示不重复的行
uniq -d aa.txt 之显示重复行
uniq -d -c 统计重复次数

-------------
grep 过滤 可以过滤关键字 过滤出来的是整行

[root@localhost ~]# grep root /etc/passwd 过滤 root用户信息
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

grep -v halt$ /etc/passwd 不以halt结尾的取反
-------

cut 截取

cut -d: -f (字段) 1 /etc/paasswd 截取 第一段root的信息
cut -d: -f (字段) 1,6/etc/paasswd 截取1和6段 的信息
cut -d: -f (字段) 1-6 /etc/paasswd 截取 1到6的信息
cut -c (字符) 1,3 /etc/paasswd

head -3 文件开头三行
tail -3 文件末尾三行

stat aa.txt 显示详细信息

练习:
1.计算出你的系统中有多少个可以登录到系统的用户 [root@localhost ~]# grep -v nologin$ /etc/passwd |wc -l
6
cat /etc/passwd | grep -c bash
cat /etc/passwd | grep /bin/bash | wc -l
cat /etc/passwd | grep /bin/bash | cut -d: -f7 |uniq -c
cat -n /etc/passwd | grep /bin/bash | cut -d: -f1,7 |cat -n

2.ifconfig eth0 | awk -F':| +' '/Bcast/{print $4}'
192.168.1.1

3. stat aa.txt
File: “aa.txt”
Size: 34 Blocks: 8 IO Block: 4096 一般文件
Device: 802h/2050d Inode: 48922685 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2012-11-17 12:06:11.000000000 +0800
Modify: 2012-11-17 12:06:11.000000000 +0800
Change: 2012-11-17 12:06:11.000000000 +0800

[root@localhost ~]# ifconfig eth0 | head -2 |tail -1 | cut -d: -f 2 | cut -d' ' -f1
192.168.1.77

只显示时间

[root@localhost ~]# stat aa.txt | cut -d ' ' -f 3 | cut -d . -f 1 | tail -3
13:12:47
13:12:47
13:12:47

--------------------------------------------------------------------

shell 基础

!! 在执行一个上次的命令

history 用过的命令

ls !$ 上次的参数

! if 后最后一条 if的命令(不也好轻易引用)

重定向符

> 标准正确输出,如果文件存在则覆盖,如果文件不存则创建
>> 标准正确输出,如果文件存在则追加,如果不存在则创建
2> 标准错误输出,如果文件存在则覆盖,如果文件不存在则创建
2>> 标准错误输出,如果文件存在则追加,如果不存在则创建
0 标准正确输入
&> 正确和错误信息都要

/proc 伪文件 222(pid号) fd 目录里
0 代表 标准正确输入
1 代表 标准正确输出
2 代表 错误输出

[root@localhost tmp]# touch aa.sh 以.sh 是脚本

自动创建用户

写脚本
#!/bin/bash 意识是一下用令用什么解释
#添加用户的脚本

for i in {1..50} i在 1到50里循环
do (开始执行)
ehco “创建新用户请等待”
sleep 2 (休眠)2秒
usera
user$i
echo “set your passwd now!!”
echo 123 | passwd --stdin user$i &>/dev/null (黑洞文件夹吃字符的)
echo “ 创建成功”
done(结束)

判断脚本:
#!/bin/bash
#判断文件是否存在
if (如果)[-f /tmp/aa.txt]
then (如果存在)
echo "文件以存在"
sleep 1
ls -l /tmp/aa.txt
else (如果不存在)
echo“ 正在创建”
sleep 1
touch /tmp/aa.txt
fi

----------------------------

循环脚本
#!/bin/bash
#添加用户的脚本
for i in {1..10}
do
echo "create user$i now!!!!!please wait!!!!"
sleep 1
useradd user$i
echo "Set user$i password now!!!!!"
echo 123 | passwd --stdin user$i &> /dev/null
echo "The create user$i success!!!!!"
done

判断脚本
#!/bin/bash
#判断文件是否存在
if [ -f /tmp/aa.txt ]
then
echo "the file is cunzai!!!!!display now!!!1"
sleep 1
ls -l /tmp/aa.txt
else
echo "the file is now cunzai!!!create it now !!!! "
sleep 1
touch /tmp/aa.txt
fi

--------------------------------------------------

网络;
mii-tool 查看网卡状态
ifconfig 查看所有网卡信息
重启网卡
[root@localhost network-scripts]# service network restart

lo 这个网卡 是本地环回 这个网卡频不通 不要去动他 地址永远是127.0.0.1

eth0 Link encap:Ethernet HWaddr 54:E6:FC:71:17:45 (mk地址)
inet addr:192.168.1.77(ip v4) Bcast:192.168.1.255 (广播地址) Mask:255.255.255.0(子网掩碼)
inet6 addr: fe80::56e6:fcff:fe71:1745/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500(最大传输单元) Metric:1
RX packets:84492(接收的包数) errors:0 dropped:0 overruns:0 frame:0
TX packets:4460(发出的包) errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:11757894 (11.2 MiB) TX bytes:310768 (303.4 KiB)
Interrupt:225 Base address:0x8000

临时修改 :
ifconfig eth0 192.168.1.77
永久修改网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
网卡的别名:虚拟网卡
ifconfig eth0:0 192.168.1.66
永久更改:
复制一个 ifcfg-eth0:0
在改里面的名字改为eth0:0
在重启服务

开始和关闭网卡
ifconfig eth0 up
ifconfig eth0 down
ifup eth0 打开网卡
ifdown eth0 关闭网卡
; 前边一个命令无论是否执行成功,后边命令都执行
&& 前边命令执行成功,后边命令才执行

通过ping解析 mik地址
arping 192.168.1.33
arp 查看和自己产生连接的
route 解析主机名
rotute -n 不解析主机名查 看路由表
traceroute www.sina.com 通过多个路由到sina
打开图形网络配置:
setup

root@localhost ~]# LANG=en_us 英文
[root@localhost ~]# LANG=zh_CH.UTF-8 中文

在文本模式下或者英文里 找 network configuratio

第一个是配置网络
第二个是DHCP自动获取

-------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息