ShellBaseCommand Linux 基本命令

来源:互联网 发布:淘宝店售假违规 编辑:程序博客网 时间:2024/05/16 18:23

login 登陆
logout 注销
uname -a 查看内核版本
ls -al 显示所有文件的属性
pwd 显示当前路径
cd - 返回上一次目录 cd ~ 返回主目录
date s 设置时间、日期
cal 显示日历 cal 2006
bc 计算器具
man & info 帮助手册
locale 显示当前字体 locale -a 所有可用字体 /etc/sysconfig/i18n设置文件
LANG=en 使用英文字体
sync 将数据同步写入硬盘
shutdonw -h now & half & poweroff 关机
reboot 重启
/work & ?work 向上、下查找文档内容
chgrp 改变档案群组 chgrp testing install.log
chown 改变所属人 chown root:root install.log
chmod 改变属性 chmod 777 install.log read=4 write=2 execute=1
cp 复制 cp filename
rm 删除文件 rm -rf filename 强制删除文件
rmdir 删除文件夹
mv 移动 mv 123.txt 222.txt 重命名
mkdir 创建文件夹
touch 创建文件 更新当前时间
cat 由第一行开始显示 cat |more 分页
nl 在内容前加行号
more & less 一面一面翻动
head -n filename 显示第N行内容
tail -n filename 显示后N行内容
od 显示非纯文档
df -h 显示分区空间
du 显示目录或文件的大小
fdisk 分区设置 fdisk -l /dev/hda 显示硬盘分区状态
mkfs 建立各种文件系统 mkfs -t ext3 /dev/ram15
fsck 检查和修复LINUX档案
ln 硬链接 ln -s 软件链接
whereis 查找命令
locate 查找
find 查找 find / -name “.
which 查看工具
whoami 显示当前用户
gcc GCC 是 GUN C Compilre, gcc -v 可查看GCC版本
chattr +i filename 禁止删除 chattr -i filename 取消禁止
lsattr 显示隐藏档属性
updatedb 更新资料库
mke2fs 格式化 mkfs -t ext3
dd if=/etc/passwd of=/tmp/passwd.bak 备份
mount 列出系统所有的分区
mount -t iso9660 /dev/cdrom /mnt/cdrom 挂载光盘
mount -t vfat /dev/fd0 /mnt/floppy 挂载软盘
mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 挂载fat32分区
mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 挂载ntfs分区
Linux-NTFS Project: http://linux-ntfs.sourceforge.net/
umount /mnt/hda3 缷载
网络
ping 网络连通性测试 ping 192.168.2.10 或者 ping mipcm.com
ifconfig 显示或设置网络设备
ifdown eth0 关闭网卡
ifup eth0 开启网卡
wifi连接管理
iwlist iwlist wifi热点列表工具
iwpriv iwpriv wifi连接状态查看工具
dhcpc dhcpc dhcp客户端命令
service network restart 重启网卡
telnet 远程终端
ftp 文件传输客户端
ssh 安全远程终端
scp 安全拷贝文件,借助ssh协议
wget HTTP 下载、上传文件
wget http://mipcm.com/ -O test.htm 可下载mipcm.com的首页并保存位test.htm文件
curl HTTP 下载、上传文件,Mac OS X自带,该命令功能类似wget
curl -o http://mipcm.com/ 注意:o是小写,可下载mipcm.com的首页并保存位test.htm文件
fdisk /mbr 删除GRUB
进程管理
at 僅進行一次的工作排程
crontab 循環執行的例行性命令 [e]编辑,[l]显示,[r]删除任务
& 后台运行程序 tar -zxvf 123.tar.gz & —–—→后台运行
jobs 观看后台暂停的程序 jobs -l
fg 将后台程序调到前台 fg n —–→n是数字,可以指定进行那个程序
bg 让工作在后台运行
kill 结束进程 kill -9 PID [9]强制结束,[15]正常结束,[l]列出可用的kill信号
ps aux 查看后台程序
top 查看后台程序 top -d 2 每两秒更新一次 top -d 2 -p10604 观看某个PID
top -b -n 2 > /tmp/top.txt —-→將 top 的資訊進行 2 次,然後將結果輸出到 /tmp/top.txt
pstree 以树状图显示程序 [A]以 ASCII 來連接, [u]列出PID, [p]列出帐号
killall 要刪除某個服務 killall -9 httpd
系统状态
free 显示内存状态 free -m —–—>以M为单位显示
uptime 显示目前系统开机时间
netstat 显示网络状态 netstat -tulnp-—-→找出目前系統上已在監聽的網路連線及其 PID
dmesg 显示开机信息 demsg | more
nice 设置优先权 nice -n -5 vi & —-→用 root 給一個 nice 植為 -5 ,用於執行 vi
renice 调整已存在优先权
runlevel 显示目前的runlevel
驱动模块管理
depmod 分析可载入模块的相依性
lsmod 显示已载入系统的模块
modinfo 显示kernel模块的信息
insmod 载入模块
modprobe 自动处理可载入模块
rmmod 删除模块
chkconfig 检查,设置系统的各种服务 chkconfig –list —-→列出各项服务状态
ntsysv 设置系统的各种服务
压缩命令:
*.Z compress 程式壓縮的檔案;
*.bz2 bzip2 程式壓縮的檔案;
*.gz gzip 程式壓縮的檔案;
*.tar tar 程式打包的資料,並沒有壓縮過;
.tar.gz tar 程式打包的檔案,其中並且經過 gzip 的壓縮
*compress filename 压缩文件 加[-d]解压 uncompress
gzip filename 压缩 加[-d]解压 zcat 123.gz 查看压缩文件内容
bzip2 -z filename 压缩 加[-d]解压 bzcat filename.bz2 查看压缩文件内容
tar 打包、解包工具
tar -cvf /home/123.tar /etc 打包,不压缩
tar -xvf 123.tar 解开包
tar -zxvf /home/123.tar.gz 以gzip解压
tar -jxvf /home/123.tar.bz2 以bzip2解压
tar -ztvf /tmp/etc.tar.gz 查看tar内容
cpio 备份文件
cpio -covB > [file|device] 份份
cpio -icduv < [file|device] 还原
vi 一般用法
一般模式 编辑模式 指令模式
h 左 a,i,r,o,A,I,R,O :w 保存
j 下 进入编辑模式 :w! 强制保存
k 上 dd 删除光标当前行 :q! 不保存离开
l 右 ndd 删除n行 :wq! 保存后离开
0 移动到行首 yy 复制当前行 :e! 还原原始档
nyyn:wfilenameHp,P:setnuMu:setnonuL[Ctrl]+rZZG[ctrl]+z退:setnohlsearch/work:sp?work[Ctrl]+wgg:nohlsearchSHELLaliasaliaslm=lsalunaliaslmtypewhichexprotexprotPATH=PATH”:/sbin 添加/sbin入PATH路径
echo PATHPATHbashname=yangunsetnameechoname 显示变量的内容
myname=”name its me" & myname='name its me’ 单引号时nameciw=/etc/sysconfig/networkscripts/envechoRANDOM 显示随意产生的数
set 设置SHELL
PS1=’[\u@\h \w \A ##]$ ’ 提示字元的設定
read [-pt] variable —–——读取键盘输入的变量
參數:
-p :後面可以接提示字元!
-t :後面可以接等待的『秒數!』
declare 声明 shell 变量
终端
clear 清屏
history 历史记录 !55 执行第55个指令
stty 设置终端 stty -a
ulimit -a 显示所有限制资料
ls /tmp/yang && echo “exist” || echo “not exist”
意思是說,當 ls /tmp/yang 執行後,若正確,就執行echo “exist” ,若有問題,就執行echo “not exist”
echo PATH | cut -d ‘:’ -f 5 以:为分隔符,读取第5段内容  
export | cut -c 10-20 读取第10到20个字节的内容  
grep 字符串匹配命令  
last | grep ‘root’ 搜索有root的一行,加[-v]反向搜索  
cat /etc/passwd | sort 排序显示  
cat /etc/passwd | wc 显示『行、字数、字节数』  
正规表示法  
grep -acinv ‘搜尋字串’ filename  
參數說明:  
-a :將 binary 檔案以 text 檔案的方式搜尋資料  
-c :計算找到 ‘搜尋字串’ 的次數  
-i :忽略大小寫的不同,所以大小寫視為相同  
-n :順便輸出行號  
-v :反向選擇,亦即顯示出沒有 ‘搜尋字串’ 內容的那一行!  
grep -n ‘the’ 123.txt 搜索the字符 —–——搜尋特定字串  
grep -n ‘t[ea]st’ 123.txt 搜索test或taste两个字符—–—-利用 [] 來搜尋集合字元  
grep -n ‘[^g]oo’ 123.txt 搜索前面不为g的oo-—–—–向選擇 [^]  
grep -n ‘[0-9]’ 123.txt 搜索有0-9的数字  
grep -n ‘^the’ 123.txt 搜索以the为行首—–——行首搜索^  
grep -n ‘^[^a-zA-Z]’ 123.txt 搜索不以英文字母开头  
grep -n ’ [a-z]
'123.txt 搜索以a-z结尾的行---------- 行尾搜索$
grep -n ‘g..d’ 123.txt 搜索开头g结尾d字符—–—–任意一個字元 .
grep -n ‘ooo*’ 123.txt 搜索至少有两个oo的字符—–—-重複字元 *
sed 文本流编辑器 利用脚本命令来处理文本文件
awd 模式扫描和处理语言
[nl] 123.txt | sed ‘2,5d’ 删除第二到第五行的内容
文件比较
diff 比较文件的差异
cmp 比较两个文件是否有差异
patch 修补文件
pr 要打印的文件格式化
帐号管理
/etc/passwd 系统帐号信息
/etc/shadow 帐号密码信息 经MD5 32位加密
在密码栏前面加『 * 』『 ! 』禁止使用某帐号
/etc/group 系统群组信息
/etc/gshadow
newgrp 改变登陆组
useradd & adduser 建立新用户 —–—→ useradd -m test 自动建立用户的登入目录
useradd -m -g pgroup test —–—→指定所属级
/etc/default/useradd 相关设定
/etc/login.defs UID/GID 有關的設定
passwd 更改密码 —–—–→ passwd test
usermod 修改用户帐号
userdel 删除帐号 —–—–→userdel -r test
chsh 更换登陆系统时使用的SHELL [-l]显示可用的SHELL;[-s]修改自己的SHELL
chfn 改变finger指令显示的信息
finger 查找并显示用户信息
id 显示用户的ID —–—–→ id test
groupadd 添加组
groupmod 与usermod类似
groupdel 删除组
su test 更改用户 su - 进入root,且使用root的环境变量
sudo 以其他身份来执行指令
visudo 编辑/etc/sudoers 加入一行『 test ALL=(ALL) ALL 』
%wheel ALL = (ALL) ALL 系统里所有wheel群组的用户都可用sudo
%wheel ALL = (ALL) NOPASSWD: ALL wheel群组所有用户都不用密码NOPASSWD
User_Alias ADMPW = vbird, dmtsai, vbird1, vbird3 加入ADMPW组
ADMPW ALL = NOPASSWD: !/usr/bin/passwd, /usr/bin/passwd [A-Za-z]*, \
!/usr/bin/passwd root 可以更改使用者密码,但不能更改root密码 (在指令前面加入 ! 代表不可)
PAM (Pluggable Authentication Modules, 嵌入式模組)
who & w 看谁在线
last 最近登陆主机的信息
lastlog 最近登入的時間 读取 /var/log/lastlog
talk 与其他用户交谈
write 发送信息 write test [ctrl]+d 发送
mesg 设置终端机的写入权限 mesg n 禁止接收 mesg y
wall 向所有用户发送信息 wall this is q test
startx & init 5 进入图形介面
iptables 网络包过滤
screen Linux/Mac OSX 命令行串口