文档库 最新最全的文档下载
当前位置:文档库 › Linux系统信息查看命令大全

Linux系统信息查看命令大全

Linux系统信息查看命令大全
Linux系统信息查看命令大全

# uname -a # 查看内核/操作系统/CPU信息

# head -n 1 /etc/issue # 查看操作系统版本

# cat /proc/cpuinfo # 查看CPU信息

# hostname # 查看计算机名

# lspci -tv # 列出所有PCI设备

# lsusb -tv # 列出所有USB设备

# lsmod # 列出加载的内核模块

# env # 查看环境变量

资源

# free -m # 查看内存使用量和交换区使用量

# df -h # 查看各分区使用情况

# du -sh <目录名> # 查看指定目录的大小

# grep MemTotal /proc/meminfo # 查看内存总量

# grep MemFree /proc/meminfo # 查看空闲内存量

# uptime # 查看系统运行时间、用户数、负载

# cat /proc/loadavg # 查看系统负载

磁盘和分区

# mount | column -t # 查看挂接的分区状态

# fdisk -l # 查看所有分区

# swapon -s # 查看所有交换分区

# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备) # dmesg | grep IDE # 查看启动时IDE设备检测状况

网络

# ifconfig # 查看所有网络接口的属性

# iptables -L # 查看防火墙设置

# route -n # 查看路由表

# netstat -lntp # 查看所有监听端口

# netstat -antp # 查看所有已经建立的连接

# netstat -s # 查看网络统计信息

# ps -ef # 查看所有进程

# top # 实时显示进程状态

用户

# w # 查看活动用户

# id <用户名> # 查看指定用户信息

# last # 查看用户登录日志

# cut -d: -f1 /etc/passwd # 查看系统所有用户

# cut -d: -f1 /etc/group # 查看系统所有组

# crontab -l # 查看当前用户的计划任务

服务

# chkconfig --list # 列出所有系统服务

# chkconfig --list | grep on # 列出所有启动的系统服务

程序

# rpm -qa # 查看所有安装的软件包

linux常见命令的列表

系统命令

apropos whatis 显示和word相关的命令。参见线程安全

man -t man | ps2pdf - > man.pdf 生成一个PDF格式的帮助文件which command 显示命令的完整路径名

time command 计算命令运行的时间

time cat 开始计时. Ctrl-d停止。参见sw

nice info 运行一个低优先级命令(这里是info)

renice 19 -p $$ 使脚本运行于低优先级。用于非交互任务。

目录操作

cd - 回到前一目录

cd 回到用户目录

(cd dir && command) 进入目录dir,执行命令command然后回到当前目录pushd . 将当前目录压入栈,以后你可以使用popd回到此目录

文件搜索

alias l='ls -l --color=auto' 单字符文件列表命令

ls -lrt 按日期显示文件. 参见newest

ls /usr/bin | pr -T9 -W$COLUMNS 在当前终端宽度上打印9列输出

find -name '*.[ch]' | xargs grep -E 'expr' 在当前目录及其子目录下所有.c 和.h文件中寻找'expr'. 参见findrepo

find -type f -print0 | xargs -r0 grep -F 'example' 在当前目录及其子目录中的常规文件中查找字符串'example'

find -maxdepth 1 -type f | xargs grep -F 'example' 在当前目录下查找字符串'example'

find -maxdepth 1 -type d | while read dir; do echo $dir; echo cmd2; done 对每一个找到的文件执行多个命令(使用while循环)

find -type f ! -perm -444 寻找所有不可读的文件(对网站有用)

find -type d ! -perm -111 寻找不可访问的目录(对网站有用)

locate -r 'file[^/]*\.txt' 使用locate 查找所有符合*file*.txt的文件look reference 在(有序)字典中快速查找

grep --color reference /usr/share/dict/words 使字典中匹配的正则表达式高亮

归档and compression

gpg -c file 文件加密

gpg file.gpg 文件解密

tar -c dir/ | bzip2 > dir.tar.bz2 将目录dir/压缩打包

bzip2 -dc dir.tar.bz2 | tar -x 展开压缩包 (对tar.gz文件使用gzip而不是bzip2)

tar -c dir/ | gzip | gpg -c | ssh user@remote 'dd of=dir.tar.gz.gpg' 目录dir/压缩打包并放到远程机器上

find dir/ -name '*.txt' | tar -c --files-from=- | bzip2 > dir_txt.tar.bz2 将目录dir/及其子目录下所有.txt文件打包

find dir/ -name '*.txt' | xargs cp -a --target-directory=dir_txt/ --parents 将目录dir/及其子目录下所有.txt按照目录结构拷贝到dir_txt/ ( tar -c /dir/to/copy ) | ( cd /where/to/ && tar -x -p ) 拷贝目录copy/到目录/where/to/并保持文件属性

( cd /dir/to/copy && tar -c . ) | ( cd /where/to/ && tar -x -p ) 拷贝目录copy/下的所有文件到目录/where/to/并保持文件属性

( tar -c /dir/to/copy ) | ssh -C user@remote 'cd /where/to/ && tar -x -p' 拷贝目录copy/到远程目录/where/to/并保持文件属性

dd bs=1M if=/dev/sda | gzip | ssh user@remote 'dd of=sda.gz' 将整个硬盘备份到远程机器上

rsync (使用–dry-run选项进行测试)

rsync -P rsync://https://www.wendangku.net/doc/5f14232626.html,/path/to/file file 只获取diffs.当下载有问题时可以作多次

rsync --bwlimit=1000 fromfile tofile 有速度限制的本地拷贝,对I/O有利rsync -az -e ssh --delete ~/public_html/ https://www.wendangku.net/doc/5f14232626.html,:'~/public_html' 镜像网站(使用压缩和加密)

rsync -auz -e ssh remote:/dir/ . && rsync -auz -e ssh . remote:/dir/ 同步当前目录和远程目录

ssh (安全Shell)

ssh $USER@$HOST command 在$Host主机上以$User用户运行命令(默认命令为Shell)

ssh -f -Y $USER@$HOSTNAME xeyes 在名为$HOSTNAME的主机上以$USER用户运行GUI命令

scp -p -r $USER@$HOST: file dir/ 拷贝到$HOST主机$USER'用户的目录下

ssh -g -L 8080:localhost:80 root@$HOST 由本地主机的8080端口转发到$HOST 主机的80端口

ssh -R 1434:imap:143 root@$HOST 由主机的1434端口转发到imap的143端口

wget (多用途下载工具)

(cd cmdline && wget -nd -pHEKk https://www.wendangku.net/doc/5f14232626.html,/cmdline.html) 在当前目录中下载指定网页及其相关的文件使其可完全浏览

wget -c https://www.wendangku.net/doc/5f14232626.html,/large.file 继续上次未完的下载

wget -r -nd -np -l1 -A '*.jpg' https://www.wendangku.net/doc/5f14232626.html,/ 批量下载文件到当前目录中

wget ftp://remote/file[1-9].iso/ 下载FTP站上的整个目录

wget -q -O- https://www.wendangku.net/doc/5f14232626.html,/timeline.html | grep 'a href' | head 直接处理输出

echo 'wget url' | at 01:00 在下午一点钟下载指定文件到当前目录

wget --limit-rate=20k url 限制下载速度(这里限制到20KB/s)

wget -nv --spider --force-html -i bookmarks.html 检查文件中的链接是否存在

wget --mirror https://www.wendangku.net/doc/5f14232626.html,/ 更新网站的本地拷贝(可以方便地用于cron)

网络(ifconfig, route, mii-tool, nslookup 命令皆已过时)

ethtool eth0 显示网卡eth0的状态

ethtool --change eth0 autoneg off speed 100 duplex full 手动设制网卡速度

iwconfig eth1 显示无线网卡eth1的状态

iwconfig eth1 rate 1Mb/s fixed 手动设制无线网卡速度

iwlist scan 显示无线网络列表

ip link show 显示interface列表

ip link set dev eth0 name wan 重命名eth0为wan

ip link set dev eth0 up 启动interface eth0(或关闭)

ip addr show 显示网卡的IP地址

ip addr add 1.2.3.4/24 brd + dev eth0 添加ip和掩码(255.255.255.0)

ip route show 显示路由列表

ip route add default via 1.2.3.254 设置默认网关1.2.3.254

tc qdisc add dev lo root handle 1:0 netem delay 20msec 增加20ms传输时间到loopback设备(调试用)

tc qdisc del dev lo root 移除上面添加的传输时间

host https://www.wendangku.net/doc/5f14232626.html, 查寻主机的DNS IP地址

hostname -i 查寻本地主机的IP地址(同等于host `hostname`)

whois https://www.wendangku.net/doc/5f14232626.html, 查寻某主机或莫IP地址的whois信息

netstat -tupl 列出系统中的internet服务

netstat -tup 列出活跃的连接

windows networking (samba提供所有windows相关的网络支持)

smbtree 寻找一个windows主机. 参见findsmb

nmblookup -A 1.2.3.4 寻找一个指定ip的windows (netbios)名

smbclient -L windows_box 显示在windows主机或samba服务器上的所有共享mount -t smbfs -o fmask=666,guest //windows_box/share /mnt/share 挂载一个windows共享

echo 'message' | smbclient -M windows_box 发送一个弹出信息到windows 主机(XP sp2默认关闭此功能)

文本操作(sed使用标准输入和标准输出,如果想要编辑文件,则需添加newfile)

sed 's/string1/string2/g' 使用string2替换string1

sed 's/\(.*\)1/\12/g' 将任何以1结尾的字符串替换为以2结尾的字符串sed '/ *#/d; /^ *$/d' 删除注释和空白行

sed ':a; /\\$/N; s/\\\n//; ta' 连接结尾有\的行和其下一行

sed 's/[ \t]*$//' 删除每行后的空白

sed 's/\([\\`\\"$\\\\]\)/\\\1/g' 将所有转义字符之前加上\

seq 10 | sed "s/^/ /; s/ *\(.\{7,\}\)/\1/" 向右排N(任意数)列sed -n '1000p;1000q' 输出第一千行

sed -n '10,20p;20q' 输出第10-20行

sed -n 's/.*\(.*\)<\/title>.*/\1/ip;T;q' 输出HTML文件的<title>字段中的内容

sort -t. -k1,1n -k2,2n -k3,3n -k4,4n 排序IPV4地址

echo 'Test' | tr '[:lower:]' '[:upper:]' 转换成大写

tr -dc '[:print:]' < /dev/urandom 过滤掉不能打印的字符

history | wc -l 计算指定单词出现的次数

集合操作(如果是英文文本的话export LANG=C可以提高速度)

sort file1 file2 | uniq 两个未排序文件的并集

sort file1 file2 | uniq -d 两个未排序文件的交集

sort file1 file1 file2 | uniq -u 两个未排序文件的差集

sort file1 file2 | uniq -u 两个未排序文件的对称差集

join -a1 -a2 file1 file2 两个有序文件的并集

join file1 file2 两个有序文件的交集

join -v2 file1 file2 两个有序文件的差集

join -v1 -v2 file1 file2 两个有序文件的对称差集

数学

echo '(1 + sqrt(5))/2' | bc -l 方便的计算器(计算φ)

echo 'pad=20; min=64; (100*10^6)/(pad+min)*8)' | bc 更复杂地计算,这里计算了最大的FastE包率

echo 'pad=20; min=64; print (100E6)/(pad+min)*8)' | python Python处理数值的科学表示法

echo 'pad=20; plot [64:1518] (100*10**6)/(pad+x)*8)' | gnuplot -persist 显示FastE包率相对于包大小的图形

echo 'obase=16; ibase=10; 64206' | bc 进制转换(十进制到十六进制)

echo $((0x2dec)) 进制转换(十六进制到十进制)(shell数学扩展)

units -t '100m/9.69s' 'miles/hour' 单位转换(公尺到英尺)

units -t '500GB' 'GiB' 单位转换(SI 到IEC 前缀)

units -t '1 googol' 定义查找

seq 100 | (tr '\n' +; echo 0) | bc 加N(任意数)列. 参见 add and funcpy

日历

cal -3 显示一日历

cal 9 1752 显示指定月,年的日历

date -d fri 这个星期五是几号. 参见day

date --date='25 Dec' +%A 今年的圣诞节是星期几

date --date '1970-01-01 UTC 2147483647 seconds' 将一相对于1970-01-01 00:00的秒数转换成时间

TZ=':America/Los_Angeles' date 显示当前的美国西岸时间(使用tzselect寻找时区)

echo "mail -s 'get the train' P@https://www.wendangku.net/doc/5f14232626.html, < /dev/null" | at 17:45 在指定的时间发送邮件

echo "DISPLAY=$DISPLAY xmessage cooker" | at "NOW + 30 minutes" 在给定的时间弹出对话框

locales

printf "%'d\n" 1234 根据locale输出正确的数字分隔

BLOCK_SIZE=\'1 ls -l 用ls命令作类适于locale()文件分组

echo "I live in `locale territory`" 从locale数据库中展开信息

LANG=en_IE.utf8 locale int_prefix 查找指定地区的locale信息。参见ccodes locale | cut -d= -f1 | xargs locale -kc | less 显示在locale数据库中的所有字段

recode (iconv, dos2unix, unix2dos 已经过时了)

recode -l | less 显示所有有效的字符集及其别名

recode windows-1252.. file_to_change.txt 转换Windows下的ansi文件到当前的字符集(自动进行回车换行符的转换)

recode utf-8/CRLF.. file_to_change.txt 转换Windows下的ansi文件到当前的字符集

recode iso-8859-15..utf8 file_to_change.txt 转换Latin9(西欧)字符集文件到utf8

recode ../b64 < file.txt > file.b64 Base64编码

recode /qp.. < file.txt > file.qp Quoted-printable格式解码

recode ..HTML < file.txt > file.html 将文本文件转换成HTML

recode -lf windows-1252 | grep euro 在字符表中查找欧元符号

echo -n 0x80 | recode latin-9/x1..dump 显示字符在latin-9中的字符映射echo -n 0x20AC | recode ucs-2/https://www.wendangku.net/doc/5f14232626.html,tin-9/x 显示latin-9编码

echo -n 0x20AC | recode ucs-2/x2..utf-8/x 显示utf-8编码

光盘

gzip < /dev/cdrom > cdrom.iso.gz 保存光盘拷贝

mkisofs -V LABEL -r dir | gzip > cdrom.iso.gz 建立目录dir的光盘镜像mount -o loop cdrom.iso /mnt/dir 将光盘镜像挂载到 /mnt/dir (只读) cdrecord -v dev=/dev/cdrom blank=fast 清空一张CDRW

gzip -dc cdrom.iso.gz | cdrecord -v dev=/dev/cdrom - 烧录光盘镜像 (使用 dev=ATAPI -scanbus 来确认该使用的 dev)

cdparanoia -B 在当前目录下将光盘音轨转录成wav文件

cdrecord -v dev=/dev/cdrom -audio *.wav 将当前目录下的wav文件烧成音乐光盘 (参见cdrdao)

oggenc --tracknum='track' track.cdda.wav -o 'track.ogg' 将wav文件转换成ogg格式

磁盘空间(参见FSlint)

ls -lSr 按文件大小降序显示文件

du -s * | sort -k1,1rn | head 显示当前目录下占用空间最大的一批文件. 参见dutop

df -h 显示空余的磁盘空间

df -i 显示空余的inode

fdisk -l 显示磁盘分区大小和类型(在root下执行)

rpm -q -a --qf '%10{SIZE}\t%{NAME}\n' | sort -k1,1n 显示所有在rpm发布版上安装的包,并以包字节大小为序

dpkg-query -W -f='${Installed-Size;10}\t${Package}\n' | sort -k1,1n 显示所有在deb发布版上安装的包,并以KB包大小为序

dd bs=1 seek=2TB if=/dev/null of=ext3.test 建立一个大的测试文件(不占用空间). 参见truncate

监视/调试

tail -f /var/log/messages 监视Messages日志文件

strace -c ls >/dev/null 总结/剖析命令进行的系统调用

strace -f -e open ls >/dev/null 显示命令进行的系统调用

ltrace -f -e getenv ls >/dev/null 显示命令调用的库函数

lsof -p $$ 显示当前进程打开的文件

lsof ~ 显示打开用户目录的进程

tcpdump not port 22 显示除了ssh外的网络交通. 参见tcpdump_not_me

ps -e -o pid,args --forest 以树状结构显示进程

ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu | sed '/^ 0.0 /d' 以CPU占用率为序显示进程

ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNS 以内存使用量为序显示进程. 参见ps_mem.py

ps -C firefox-bin -L -o pid,tid,pcpu,state 显示指定进程的所有线程信息ps -p 1,2 显示指定进程ID的进程信息

last reboot 显示系统重启记录

free -m 显示(剩余的)内存总量(-m以MB为单位显示)

watch -n.1 'cat /proc/interrupts' 监测文件/proc/interrupts的变化

系统信息(参见sysinfo)

uname -a 查看内核/操作系统/CPU信息

head -n1 /etc/issue 查看操作系统版本

cat /proc/partitions 显示所有在系统中注册的分区

grep MemTotal /proc/meminfo 显示系统可见的内存总量

grep "model name" /proc/cpuinfo 显示CPU信息

lspci -tv 显示PCI信息

lsusb -tv 显示USB信息

mount | column -t 显示所有挂载的文件系统并对齐输出

dmidecode -q | less 显示SMBIOS/DMI 信息

smartctl -A /dev/sda | grep Power_On_Hours 系统开机的总体时间

hdparm -i /dev/sda 显示关于磁盘sda的信息

hdparm -tT /dev/sda 检测磁盘sda的读取速度

badblocks -s /dev/sda 检测磁盘sda上所有的坏扇区

===== 交互 (参见linux keyboard shortcut database) =====

readline Line editor used by bash, python, bc, gnuplot, ...

screen 多窗口的虚拟终端, ...

mc 强大的文件管理器,可以浏览rpm, tar, ftp, ssh, ...

gnuplot 交互式并可进行脚本编程的画图工具

links 网页浏览器

miscellaneous

alias hd='od -Ax -tx1z -v' 方便的十六进制输出。(用法举例: ? hd /proc/self/cmdline | less)

alias realpath='readlink -f' 显示符号链接指向的真实路径(用法举例: ? realpath ~/../$USER)

set | grep $USER 在当前环境中查找

touch -c -t 0304050607 file 改变文件的时间标签 (YYMMDDhhmm)

python -m SimpleHTTPServer Serve current directory tree at http://$HOSTNAME:8000/

linux常用命令

新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容易掌握。 由于操作和使用环境的陌生,如果要完全熟悉Linux的应用我们首先要解决的问题就是对Linux常用命令的熟练掌握。本章我们就来介绍Linux的常用基本命令。 Linux常用命令 1.Linux命令基础 Linux区分大小写。在命令行(shell)中,可以使用TAB键来自动补全命令。即可以输入命令的前几个字母,然后按TAB键,系统自动补全命令,若不止一个,则显示出所有和输入字母相匹配的命令。 按TAB键时,如果系统只找到一个和输入相匹配的目录或文件,则自动补全;若没有匹配的内容或有多个相匹配的名字,系统将发出警鸣声,再按一下TAB键将列出所有相匹配的内容(如果有的话)以供用户选择。 首先启动Linux。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中―系统管理员‖拥有最高权限。 在启动Linux后屏幕出现如下界面显示:Red Hat Linux release 9 (Shrike) Kernel 2.4.20.8 on an i686

login: 输入:root(管理员名)后,计算机显示输口令(password:),输入你的口令即可。当计算机出现一个―#‖提示符时,表明你登录成功! 屏幕显示Linux提示符:[root@localhost root]#_ 这里需要说明的是―Red Hat Linux release 9 (Shrike)‖表示当前使用的操作系统的名称及版本。―2.4.20.8‖表示Linux操作系统的核心版本编号。―i686‖表示该台电脑使用的CPU的等级。 下面我们来介绍常用基本命令 一,注销,关机,重启 注销系统的logout命令 1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: [root@localhost root]#logout

HP UNIX操作系统管理常用命令

HP UNIX操作系统管理常用命令 2009-02-05 14:41 具体的命令格式和功能可用m a n命令来查看,具体语法是m a n c o m m a n d 1、#i o s c a n-n f:列出各I/O卡及设备的所有相关信息,如逻辑单元号,硬件地址及设备文件名等。 2、#p s-e f:列出正在运行的所有进程的各种信息,如进程号,进程名等。 3、#n e t s t a t-r n:列出网卡状态及路由信息。 4、#l a n s c a n:列出网卡状态及网络配置信息。 5、#b d f:列出已加载的逻辑卷及其大小信息。 6、#m o u n t:列出已加载的逻辑卷及其加载位置。 7、#u n a m e-a:列出系统I D号,O S版本及用户权限等。 8、#h o s t n a m e:列出系统网络名称。 9、#p v d i s p l a y-v/d e v/d s k/c*t*d*:显示磁盘各种信息,如磁盘大小,包含逻辑卷,设备名称等。 10、#v g d i s p l a y-v/d e v/v g00:显示逻辑卷组信息,如包含哪些物理盘及逻辑卷等。 11、#l v d i s p l a y-v/d e v/v g00/l v o l1:显示逻辑卷信息,如包含哪些盘,是否有镜像等。 12、如需修改网络地址、主机名等,一定要用s e t_p a r m s命令 #s e t_p a r m s h o s t n a m e #s e t_p a r m s i d_a d d r e s s 13、查看网卡状态:l a n s c a n 14、确认网络地址:i f c o n f i g l a n0 15、启动网卡:i f c o n f i g l a n0u p 16、网络不通的诊断过程: l a n s c a n查看网卡是否启动(u p) p i n g自己网卡地址(i p地址) p i n g其他机器地址,如不通,在其他机器上用l a n s c a n命令得知s t a t i o n a d d r e s s,然后l i n k l o o p s t a t i o

Linux常用命令大全.pdf

Linux常用命令学习 1、ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文件,包含以.开始的隐藏文件 ls -A 列出除.及..的其它文件 ls -r 反序排列 ls -t 以文件修改时间排序 ls -S 以文件大小排序 ls -h 以易读大小显示 ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来 实例: (1) 按易读方式按时间反序排序,并显示文件详细信息 ls -lhrt (2) 按大小反序显示文件详细信息 ls -lrS (3)列出当前目录中所有以“t”开头的目录的详细内容 ls -l t* (4) 列出文件绝对路径(不包含隐藏文件) ls | sed "s:^:`pwd`/:" (5) 列出文件绝对路径(包含隐藏文件) find $pwd -maxdepth 1 | xargs ls -ld 2、cd命令 (changeDirectory),命令语法:cd [目录名]。说明:切换当前目录至dirName 实例: (1)进入要目录 cd /

(2)进入"家"目录 cd ~ (3)进入上一次工作路径 cd - (4)把上个命令的参数作为cd参数使用。 cd !$ 3、pwd命令 查看当前工作目录路径 实例: (1)查看当前路径 pwd (2)查看软链接的实际路径 pwd -P 4、mkdir命令 创建文件夹 可用选项: -m: 对新建目录设置存取权限,也可以用chmod命令设置; -p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录; 实例: (1)当前工作目录下创建名为t的文件夹 mkdir t (2)在tmp目录下创建路径为test/t1/t的目录,若不存在,则创建 mkdir -p /tmp/test/t1/t 5、rm命令 删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用rm 来删除文件,通常仍可以将该文件恢复原状 rm [选项] 文件… 实例:

unix操作基本命令

UNIX系统操作入门篇(一) 这篇东西是关于Unix系统操作的教程。也是Unix的入门教程。如果你有兴趣学,请看下去,保证你可以学到许多有用的东西。如果你满足于dos,windows的操作,不想对网络服务器,有任何了解的话,可以不看。因为你并不想成为计算机高手。本教程仅仅讲授Unix系统的常用命令,不涉及Unix的历史、安装和编程。如果你想得到更多的知识,请查找其他的教材。本教程参考了《精通Unix》、《Unix基础》、《Unix系统使用指南》等书,你可以在那里找到更多的知识。 准备知识: Unix是一个多任务多用户的操作系统。多任务是指可以同时运行几个不同的程序,或命令。在操作系统的术语里叫“进程”,就象在运行Windows95的时候我们可以一边听CD 一边打字,同时打印机还在工作。多用户是指一台运行Unix系统的机器可以同时具有几个不同的输入输出设备,给几个,几十个用户同时使用。不同的输入输出设备我们称为终端。Unix 给每个终端设置不同的序号以协调工作,这个序号被称为终端序号。Unix是一个根本不同于Dos的系统,无论其命令格式,用途都和Dos有很大区别。比如:目录分割符是"/",而不是"\"。具体的不同请参考其他书籍。 开始练习之前: 在开始教授Unix命令之前,请先记下这个地址:https://www.wendangku.net/doc/5f14232626.html,。它是一台在美国的,连上Internet的Unix主机。之所以告诉大家这个地址是因为它提供免费的帐号供大家使用。是免费的。就是说你可以先去那里申请一个帐号,然后在那里练习你所学到的Unix 命令。因为我相信不是每个朋友都可以轻松地得到Unix帐号的。在你成功的申请好帐号之后,请在你Windows95的dos窗口里输入"telnet https://www.wendangku.net/doc/5f14232626.html," 等待连上主机。接下来就是输入你的用户名和密码,不要告诉我这些你都不会,如果你不会的话,你是怎么连到这个网页的?现在假定你连上了主机,系统的提示符应该是"https://www.wendangku.net/doc/5f14232626.html,%",对这个就是提示符就象dos里的"c:\>"。接下去我将开始命令篇。 ls 你记不记得你学会的第一个Dos命令?反正我学会的第一个命令是dir:列目录和文件的命令。你学会的第一个Unix的命令也是列目录和文件的命令ls. 功能列出当前目录下的文件和目录。同Dos一样,Unix系统命令也是带参数的。ls的参数有"a","l","F"。请注意,F是大写。Unix系统里对命令的大小是严格区分的。(所以我们做网页常常会发生连接错误)同dos 不一样的地方在于,Unix命令的参数是"-"为其前导,而不是"/"。所以完整的ls命令是 ls -l -a -F或ls -laF -l:long的意思,把文件的其他资料,如文件长度,上次修改的日期等等列出来。 -a:all的意思,把本目录下所有的文件,包括隐含的文件也列出来。 -F:显示文件类型。"*"表示可执行文件,"/"表示目录,"@"表示连接。 好,请在你的机器上输入ls -l -a -F,或许这是你一生里第一个Unix命令。记住了吗? cd 变换目录,和Dos相同。如果你在cd后面没有给定目的地,则表示目的地是家目录。在unix 中有三中表示目录的符号".","..","~"。"."表示当前目录路径的位置".."表示当前路径的上一层目录,或称"父目录" "~"表示家目录,所谓家目录指系统管理员分配给你的目录,比如你的用户名是li,那么你的家目录就是在"~li",在cd后面加上"~li"就是去你的家目录。 date 显示出当前的时间和日期,记住在Unix里你是无法修改系统时间的。输出时间一般是格林

SCO_UNIX系统常用命令.

SCO UNIX 系统常用命令 一. 常用系统命令 1. 登录 在login :下,输入用户名,密码,进入显示shell 名令提示符,超级用户#>,普通用户$>. 2 su #>su -oracle 3 退出 exit logout ctrl +d( 强制退出 4 passwd修改密码 5 man查命令的解释 6who 查看登录用户,包括自己。 Who am I 7finger 显示当前用户的信息。 8clear 清屏 9setcolor -n 置屏幕为normal , 黑底白字。 10wall 广播信息 wall -》回车-》输入内容-》ctrl +d mail 发送邮件

mail 接收用户名-》回车-》输入内容-》ctrl +d 11关机 shutdow n -g0 —立即关闭无需确认 haltsys reboot init 0 关机 init 6 停止系统运行并重启 12du dfspace du :显示文件目录占用的磁盘空间大小。 Dfspace: 显示空闲磁盘空间。 13scoadmin系统管理工具 14u name —显示系统信息 15env 显示更改环境设置 set 16sar系统维护的重要工具 /usr/lib/sa/sar_e nable-y 打开 /usr/lib/sa/sar_e nable—n 关闭 从14个方面报告系统的活动情况,重点监视内存和cpu的使用情况.sar -r 30 4 报告内存和交换区的使用

sar -u 30 4报告cpu的使用情况 Wio 值高表示硬盘存在IO 瓶颈 Idle 值高表示等待分配内存, 需扩内存小于30表示进程主要竞争的自源是cpu. ipcs 显示共享内存 ipcrm -m(s id 号 integrity 把文件控制数据库与文件系统中的文件, 进行比较. Fixmog 使全部的系统文件或指定的系统文件和鉴别数据库一致起来. 二. 文件目录相关命令 1 pwd 显示当前所在目录 2cd 3mkdir 创建目录 4rmdir 删除目录 5rm 删除文件 rm —r 6mv 源目标 7cp 源目标 cp -r 8ln 源目标文件的链接 9pg 文件

Linux命令大全完整版

Linux命令大全完整版 目录 目录........................................................................................................................................... I 1. linux系统管理命令 (1) adduser (1) chfn(change finger information) (1) chsh(change shell) (1) date (2) exit (3) finger (4) free (5) fwhois (5) gitps(gnu interactive tools process status) (5) groupdel(group delete) (6) groupmod(group modify) (6) halt (7) id (7) kill (8) last (8) lastb (8) login (9) logname (9) logout (9) logrotate (9) newgrp (10) nice (10) procinfo(process information) (11) ps(process status) (11) pstree(process status tree) (14) reboot (15)

rlogin(remote login) (16) rsh(remote shell) (16) rwho (16) screen (17) shutdown (17) sliplogin (18) su(super user) (18) sudo (19) suspend (19) swatch(simple watcher) (20) tload (20) top (21) uname (21) useradd (22) userconf (22) userdel (23) usermod (23) vlock(virtual console lock) (24) w (24) who (25) whoami (25) whois (25) 2. linux系统设置命令 (27) alias (27) apmd(advanced power management BIOS daemon) (27) aumix(audio mixer) (27) bind (29) chkconfig(check config) (29) chroot(change root) (30)

Linux常用命令详解(配合示例说明,清晰易懂)

Linux常用命令详解 (常用、详细) BISTU 自动化学院 刷碗小工(frisen.imtm) 2010年11月 开源社区,造福大家,版权所有,翻录不究(初次接触Linux命令可能对以下说明有不少疑问,可待看完一遍后再回头细看) (配合Ctrl + F可快速查找你想了解的命令)

索引:(待完善) 文件说明:Linux命令很多,但最常用的80个左右 文档内容充实,用示例说明命令如何使用笔者力求语言简洁,清晰易懂 由于忙于其他事情,改进排版的工作只能搁置了 最后,望此文档能为大家Linux学习之路献微薄之力 一、路径: 执行命令前必须要考虑的一步是命令的路径,若是路径错误或是没有正确的指定,可能导致错误的执行或是找不到该命令。要知道设置的路径,可执行以下命令: 一般而言,本书的命令位于/bin、usr/bin、/sbin、/usr/sbin之中。若读者执行了命令却出现“command not find”或是“命令不存在”的字样,就必须要确定该命令的位置是否在命令的路径中,或是系统上根本没有安装该套件。 二、命令顺序: 若在shell内置的命令/bin以及/usr/bin之下都出现了命令pwd,那当我们执行该命令时,会执行哪一个?答案是第一优先执行shell内置的命令,再执行路径中的设置;因此若有相同名称的命令时,必须要注意顺序设置,或是直接输入完整路径。 三、参数(或称选项)顺序: 一般除了特殊情况,参数是没有顺序的。举例而言,输入“–a –v”与输入“–v –a”以及“–av”的执行效果是相同的。但若该参数后指定了要接的文件或特殊对象,如“–a cmd1 –v cmd2”,则不能任意改变选项顺序。 四、常用参数: 下面所列的是常见的参数(选项)意义: --help,-h 显示帮助信息 --version,-V 显示版本信息 -v 繁琐模式(显示命令完整的执行过程) -i 交谈模式(指定界面) -l 长列表输出格式 -q,-s 安静模式(不显示任何输出或错误信息) -R 递归模式(连同目录下所有文件和子目录一起处理) -z 压缩 五、命令的结合与定向: 命令中除了一般命令外,还有管道(或称途径)(|)与定向(>或>>)。 管道(途径)的用法: “命令一[选项]”| “命令二[选项]”,也就是将“命令一[选项]”的输出结果传到“命令二[选项]”,通过命令二的处理之后才输出到标准输出(屏幕)上。比如“ls /etc”会列出etc下的所有文件,若加上“| less”,也就是“ls /etc | less”,则会将“ls /etc”的结果通过less分页输出。 定向的用法: 将结果定向到命令的输出设备,一般不加文件名意为将结果输出到屏幕,若是在定向后加上文件名,则会将命令的执行结果输出到定向的文件,例如“ls > temp.txt”,就会将ls 的结果输出到文件temp.txt中。“>”与“>>”的差异在于前者是覆盖,而后者是附加。 六、命令中的命令: 许多命令在执行后,会进入该命令的操作模式,如fdisk、pine、top等,进入后我们必须要使用该命令中的命令,才能正确执行;而一般要退出该命令,可以输入exit、q、quit或是按【Ctrl+C】组合

UNIX系统常用命令

UNIX系统常用命令 UNIX系统常用命令格式: command [flags] [argument1] [argument2] ... 其中flags以-开始,多个flags可用一个-连起来,如ls -l -a 与ls -la相同。 根据命令的不同,参数分为可选的或必须的;所有的命令从标准输入接受输入,输出结果显示在标准输出,而错误信息则显示在标准错误输出设备。可使用重定向功能对这些设备进行重定向。 命令在正常执行结果后返回一个0值,如果命令出错可未完全完成,则返回一个 非零值(在shell中可用变量$?查看). 在shell script中可用此返回值作为控制逻辑的一部分。 注:不同的UNIX版本的flags可能有所不同。 1、与用户相关的命令 1.1 login (在LINUX Redhat下此命令功能与Solaris/BSD不同,执行login会退出当前任务). login: Password: 相关文件: 在下面的这些文件中设定shell运行时必要的路径,终端类型,其他变量或特殊程序. $HOME/.profile (Bourne shell, sh, bash) $HOME/.cshrc (csh, tcsh) $HOME/.tcshrc (tcsh) /etc/passwd文件中列出每个用户的shell /etc/csh.cshrc /etc/csh.login /etc/profile (Bourne shell, bash) /etc/login (Bourne shell, bash) csh: /etc/csh.cshrc和$HOME/.cshrc每次执行都会读取, 而/etc/csh.login和$HOME/.login只有注册shell才执行 修改相应文件后使用 source .cshrc使能相关修改,如果修改了path则 还需使用rehash刷新可执行文件hash表。 tcsh: $HOME/.tcshrc, 没有些文件读取.cshrc sh: /etc/profile和$HOME/.profile注册shell bash: /etc/profile和$HOME/.bash_profile注册shell读取 .bashrc交互式非注册shell才读取。

Linux基本命令大全

下面我们来介绍常用基本命令 一、注销,关机,重启 注销系统的logout命令 1,Logout 注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达logout命令即可: [root@localhost root]#logout Red Hat Linuxrelease 9(Shike) Kernel 2.4.20.8 on an i686 Login: ←回到登陆的画面 2,关机或重新启动的shutdown命令 Shutdown命令可以关闭所有程序,依照用户的需要,重新启动或关机。 参数说明如下: λ立即关机:-h 参数让系统立即关机。范例如下: [root@localhost root]#shutdown –h now ←要求系统立即关机 λ指定关机时间:time参数可指定关机的时间;或设置多久时间后运行shutdown命令,范例如下: [root@localhost root]#shutdown now ←立刻关机 [root@localhost root]#shutdown +5 ←5分钟后关机 [root@localhost root]#shutdown 10:30 ←在10:30时关机 关机后自动重启:-rλ参数设置关机后重新启动。范例如下: [root@localhost root]#shutdown -r now ←立刻关闭系统并重启 [root@localhost root]#shutdown -r 23:59 ←指定在23:59时重启动 3,重新启动计算机的reboot命令 顾名思义,reboot命令是用来重新启动系统的。常用的参数如下: λ-f 参数:不依正常的程序运行关机,直接关闭系统并重新启动计算机。 -Iλ参数:在在重新启动之前关闭所有网络接口。 虽然reboot命令有个参数可以使用,但是一般只需要单独运行reboot命令就可以了 二、文件与目录的操作 列出文件列表的ls命令 1,ls(list)命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例如下: ? 显示当前目录的内容: [tony@free tony]$ ls Desktop mail myinstall.log test.txt ←有两个目录及两个文件夹 ? 当运行ls命令时,并不会显示名称以―.‖开头的文件。因此可加上―-a‖参数指定要列出这些文件。范例如下: [tony@free tony]$ ls –a ? 以―-s‖参数显示每个文件所有的空间,并以―-S‖参数指定按所有占用空间的大小排序。范例如下: [tony@free tony]$ ls –s –S 总计36 4 Desktop 4 mail 24 myinstall.log 4 test.txt ? 在ls命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下: [tony@free tony]$ ls –l/usr/games 2,切换目录的cd命令

SCO_UNIX系统常用命令.

SCO UNIX系统常用命令 一. 常用系统命令 1. 登录 在 login :下,输入用户名,密码,进入显示 shell 名令提示符,超级用户 #>,普通用户$>. 2 su #>su – oracle 3 退出 exit logout ctrl +d(强制退出 4 passwd 修改密码 5 man 查命令的解释 6who 查看登录用户,包括自己。 Who am I 7finger 显示当前用户的信息。 8clear 清屏 9setcolor – n 置屏幕为 normal , 黑底白字。 10wall 广播信息 wall -》回车-》输入内容-》 ctrl +d mail 发送邮件

mail 接收用户名-》回车-》输入内容-》 ctrl +d 11关机 shutdown – g0 – y 立即关闭无需确认 haltsys reboot init 0 关机 init 6 停止系统运行并重启 12du dfspace du :显示文件目录占用的磁盘空间大小。 Dfspace: 显示空闲磁盘空间。 13scoadmin 系统管理工具 14uname – X 显示系统信息 15env 显示更改环境设置 set 16sar 系统维护的重要工具 /usr/lib/sa/sar_enable – y 打开 /usr/lib/sa/sar_enable – n 关闭 从 14个方面报告系统的活动情况 , 重点监视内存和 cpu 的使用情况 . sar – r 30 4 报告内存和交换区的使用 .

sar – u 30 4 报告 cpu 的使用情况 . Wio 值高表示硬盘存在 IO 瓶颈 Idle 值高表示等待分配内存 , 需扩内存小于 30表示进程主要竞争的自源是cpu. ipcs 显示共享内存 ipcrm -m(s id 号 integrity 把文件控制数据库与文件系统中的文件 , 进行比较 . Fixmog 使全部的系统文件或指定的系统文件和鉴别数据库一致起来 . 二. 文件目录相关命令 1 pwd 显示当前所在目录 2cd 3mkdir 创建目录 4rmdir 删除目录 5rm 删除文件 rm – r 6mv 源目标 7cp 源目标 cp -r 8ln 源目标文件的链接

UNIX命令

入门介绍和常用命令 如果文件系统磁盘空间不足,则可能出现停止服务等反常现象。 建议各现场系统环境维护人员要定期检查一下Domain所在文件系统的磁盘空间是否足够。命令: df -k df -m df -g等。 历史: BSD,SYSTEM V 主流商业版本 SUN SOLORIS IBM AIX HP-UX Tru64 UNIX LINUX 登录和用户管理 进入系统 login: passwd: 字符方式: 字符终端(console,tty) telnet,term-tools 图形方式(x-window protocal): 从主机登录; 图形终端工具(reflection,hummingbird,cygwin,etc.) Change passwd: $ passwd old password: new password: reenter new password: chsh $ chsh /bin /sh /bin /csh User informaiton defined in /etc/passwd,readonly for ordinary users.

$ man cmd $ docsearch $ wheris cmd $ which cmd Command Search Path $ echo $PATH 查看自己的用户名 $ whoami who ,w 查看当前谁在系统上 users, u 查看当前系统的用户 id 看登录用户 finger user 查看user 的信息 ps 显示当前进程状况 ps –u user 显示用户名为user 的进程状况 进程调度 后台运行 $ cmd & $ cmd1;cmd2;cmd3 $ cmd1&&cmd2&&cmd3 $ cmd1||cmd2||cmd3 从后台转到前台 $ jobs #查找 $ fg %n 定时任务 at,cron $ at time cmd $ crontab –l $ crontab –e $ crontab user # root can edit other users? crontab 重定向和管道 stdin,stdout,stderr $ cmd >file $ cmd

UNIX操作系统常用命令使用方法

UNIX系统及BSJ2200系统培训 第一章SUN系统介绍 第一节SUN的发展史 (一)硬件体系 81--89 Sun1/2/3 CISC Motrala 680x0系列 89--94 Sun4/60 sparc1 Risc sparc 65 sparc1+ 70 sparc2 Server : Sun/290/670/690 93--96 Sparc10/20 SuperSparc Server : 1000/2000 96--97 Ultra1(140/170/170E/200E) UltraSparc SBUS体系结构,UPA接口 Ultra2 Server : E150,E3000 98--99 Ultra5 ,Ultra10 PCI体系结构(IDE外设) Ultra30,Ultra60 Server : E250,E450,E3500 2000-至今BLADE 150/2000/2500 (二)软件体系 Solaris 1.x SunOS 4.1.3+OpenWindow 1.x BSD Solaris 2.x System V 32bit 2.5.1 SunOS 5.5.1 +OpenWindows 2.6 SunOS5.6+CDE1.2 Solaris 2.7(7) 64 bit Solaris 2.8(8) for sparc平台/intel x86平台 Solaris 2.9(9) for sparc平台/intel x86平台 第二节SUN系统的安装 以SUN Ultra5(9.1G)硬盘Solaris2.7为例,步骤如下: 1、在OK提示下输入:boot cdrom 2、出现“Select Language and local”时,选择“Continue”按钮。 3、出现“The Solaris installation program”时,选择“Continue”按钮。 4、出现“Identify this system”时,选择“Continue”按钮。 5、出现“Hostname”时,先输入机器名后,再选择“continue”按钮。 6、出现“Network connectively”时,先选择“Yes”,再选择“Continue”。 7、出现“IP Address”时,输入IP后,选择“Continue”。 8、出现“Confirm Infirmation”时,选择“Continue”。 9、出现“Name service”时,先选择“None”后,再选择“Continue”。 10、出现“Confirm Infirmation”时,选择“Continue”。 11、出现“Subnets”时,先输入“NO”,再输入“Continue”。 12、出现“Time Zone Geographic region”时,输入“Set”。 13、出现“Geographic region”时,选“Asia Eastern HongKong”。

Red_Hat_Linux常用命令汇总

[资料] Red Hat Linux常用命令汇总 Linux 常用命令汇总 ls命令: 1. ls //列出当前目录的文件和文件夹 2. ls –a //列出当前目录的文件和文件夹,包含隐藏文件 3. ls –l //列出详细信息 4. ls 目录 //列出某目录下的文件 pwd命令 //查看当前所在位置 du 命令 1. du 目录 //查看目录的总容量以及子目录的容量 2. du –s 目录 //查看目录总容量 cd 命令 1.cd .. //回上一级目录 2.cd / //回根目录 3. cd //回用户主目录 4.cd 目录路径 //去某目录 mkdir 目录名 //创建目录 rmdir 空目录名 //删除空目录 rm 文件名 //删除文件 rm –rf 目录名 //删除目录以及目录下所有文件 mount 命令 1.mount /dev/cdrom /mnt/cdrom //挂载光驱到 /mnt/cdrom目录下2.mount -t vfat /dev/sda1 /mnt/u //挂载U盘到 /mnt/u目录下

3. umount /mnt/cdrom //卸载光驱 fdisk –l //查看本机存储设备 file 文件名 //查看文件类型 find 目录名–name “*.c” //在某目录下查找文件为*.c的文件 whereis 文件名 //查找文件在哪些目录下 cat 文件名 //显示文件内容 cat 文件名 | grep 文字 //只显示包含文字相关的内容 cat 文件名 | more //分页显示文件内容 tail 文件名 //查看文件末尾 head 文件名 //从头查看文件 cp 命令: cp 文件1 文件2 //复制文件1 到文件2 cp 文件1 目录1 //复制文件1到目录1下 cp 目录1/文件1 目录2 //复制目录1下的文件1到目录2下 cp –r 目录1 目录2 //复制目录1下所有内容到目录2 mv 命令: mv 文件1 文件2 //重命名文件1为文件2 mv 文件1 目录1 //移动文件1到目录1下 mv 目录1/文件1 目录2 //移动目录1下的文件1到目录2下 mv –r 目录1 目录2 //移动目录1下所有内容到目录2 chmod 命令: chmod u+x g+r o-w 文件名 //为文件设置权限(用户,组,其他人)chmod 744 文件名 //为文件设置权限(1-执行,2-写,4-读) chown 命令: chown 用户文件名 //把文件改为用户所有

UNIX系统调试常用命令

solaris系统常用命令: 一、OK状态下的命令 在多用户状态下运行init 0 或按stop+A键可以进入OK状态, 格式: OK> 指令 (一)、显示环境参数 1、banner 显示当前机器配置状况,CPU,内存,hostid,EtherNet 2、devalias 显示设备别名,如 cdrom,disk,disk0,disk1等 3、printenv 无参数,显示环境变量;参数为环境变量名,显示变量值 如: printenv auto-boot? (二)、显示挂接的设备 1、probe-scsi 显示内部SCSI通道所挂接设备 2、probe-scsi-all 显示所有SCSI通道及所挂接设备 3、probe-ide 显示所有IDE通道及所挂接设备(针对U10,U5) (三)、设置环境变量 1、setenv 设置环境变量,如: setenv auto-boot? false 3、set-defaults 恢复所有环境变量预定值 设置完环境变量后必须运行reset-all,所设置的变量才保存下来(四)、其他命令 1、boot device option 启动主机 device可以为:设备别名: cdrom 或 disk 也可以为:设备名: /pci@1f,4000/scsi@3,1/disk@6,0:f option可以为 -r 设备重新配置 -s 系统重启到单用户状态 2、eject cdrom|floppy 弹出cdrom或floppy 3、test net:测试网络设备(网卡) 4、power-off 关机 二、系统多用户状态下的常用命令 1、如何查看cup的状态? # psrinfo -v # mpstat 可以列出多cpu负载的状态

Linux操作系统及常用命令

Linux提供了大量的命令,利用它可以有效地完成大量的工 作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。 下面我将比较常用的命令,按照系统中的作用分成以下6个部分 安装和登录命令:shutdown、reboot、install、mount、umount、exit、last; 文件处理命令:file、mkdir、grep、find、mv、ls、diff、cat; 系统管理相关命令:df、top、free、adduser、groupadd、kill、crontab; 网络操作命令:ifconfig、ping、netstat、telnet、ftp、route、scp、finger; 系统安全相关命令:passwd、su、chmod、chown、sudo、ps、who; 其它命令:tar、unzip、unarj、man 安装与登陆命令 shutdown 1.作用 shutdown命令的作用是关闭计算机,它的使用权限是超级用户root。 2.格式 shutdown [-h][-i][-k][-m][-t] 3.重要参数 -t:在改变到其它运行级别之前,告诉init程序多久以后关机。 -k:并不真正关机,只是送警告信号给每位登录者。 -h:关机后关闭电源。 -c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。 -F:在重启计算机时强迫fsck。 -time:设定关机前的时间。 -m: 将系统改为单用户模式。 -i:关机时显示系统信息。 -r:重启。 4.实用例子 远程重启满天星服务器192.168.0.25 shutdown -m \\192.168.0.25 -r -f -t 0 远程重启兴通博服务器192.168.0.41 shutdown -m \\192.168.0.41 -r -f -t 0 reboot 1.作用 reboot命令的作用是重新启动计算机,它的使用权限是系统管理者root。 2.格式

UNIX系统开发-sdb命令使用:程序执行控制

UNIX系统开发-sdb命令使用:程序执行控制 我们说程序调试的主要目的是观察变量的变化情况。但如果程序就一直不停地运行直至它终止或出错时才停下来的话,将没有机会去观察任何变量。因此,如何有效地控制程序中各语句的执行,使之在适当的时候暂停下来,待调试人员在显示或设置了某些存储单元的值之后再从停下的地方继续执行下去,是调试程序应具有的一项基本功能。在这一节中我们就来具体介绍如何控制程序的运行。 对程序执行控制的第一个问题是设置断点。一个断点实际上就是程序中某行语句。当程序执行到这条语句时控制会重复返回到sdb,由此提供给用户进行其他操作,如显示变量值的机会。 1.断点的设置和删除 在sdb中设置断点的方法比较多。但基本是b命令的变种。例如,我们可以使用如下语句在main()函数的第一个可执行行(非变量定义这类语句)设置一个断点: * main:b 也可以直接用行号来设置断点。例如,在myprog.c中,第10行是main()函数中的第一个可执行语句,则使用如下命令也能达到同样的效果: * 10b 注意这是在myprog.c为当前文件的情况下进行的。 如果直接输入: * b 命令,则可将当前行设成是一个断点。但是若当前行不是一个可执行语句,那么sdb将把当前行之后的第一个可执行语句处设置一个断点。 在设置完断点之后,为了解程序中设置有哪些断点,可以使用B命令: * B

0x80483f0 myprog.c:10 main+0x8 0x80483f7 myprog.c:11 main+0xf 0x8048407 myprog.c:12 main+0xlf 0x8048440 myprog.c:9 T estInput 0x8048447 myprog.c:10 TestInput+ 0x7 0x804482 myprog.c:13 T estInput+ 0x42 在设置完断点之后要将其删除,可以使用d命令。如: * main:d sdb将把在main()函数中设置的第一个可执行行上的断点删除。如果直接使用d命令,sdb 将逐个列出所有断点并询问用户是否删除之。回答y断点将被删除。使用D命令则可删除程序中设置的所有断点。 2.sdb中启动程序的运行 在设置好所需的断点之后我们就可以重新启动程序的运行了。这可以使用r命令。如: * r 111 2 BREAKPOINT process 554 function main() in myprog.c 10: for(i=1;i

入门学习Linux常用必会60个命令实例详解

入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。 ◆安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last; ◆文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup; ◆系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。 -------------------------------------------------------------------------------- Linux必学的60个命令(1)-安装与登陆命令 login 1.作用 login的作用是登录系统,它的使用权限是所有用户。 2.格式 login [name][-p ][-h 主机名称] 3.主要参数

相关文档