海阔天空 邵加超的BLOG

一些杂七杂八的小程序,Linux学习笔记和对人生的思考

我常用的LINUX命令

############################################################################
#
#     Useful Linux Commands
#  ----------------------------------------------------------------------
#   Jerry Fleming, 2004-09-13
#
############################################################################

# show system load in ascii art
tload
# simple watcher
swatch
# send process to bg like C-Z does
suspend
# execute a command by someone else
sudo
# change to another user(default: super user)
su
# change to another group
newgrp
# process information
procinfo
#show uid and gid
id
# gnu interactive tools process status
gitps

# tar ball size restricted
tar cvzpf - mytarfile.tar.gz | split -d -b 500m
cat x* > mytarfile.tar.gz

# save man page and info to file
man tcsh | col -b > tcsh.txt
info tcsh -o tcsh.txt -s

# join two files
cat file1 file2 | sort | uniq # (unique) lines in both files
cat file1 file2 | sort | uniq -d # (duplicated) lines in both files
cat file1 file2 | sort | uniq -u  # lines only in one file

# show system info
cat /proc/cpuinfo # CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts # interruptions
cat /proc/ioports # ioports
cat /proc/meminfo # mem used, free, swap size
cat /proc/partitions # all partitions on all devices
cat /proc/pci # PCI devices
cat /proc/swaps # all swaps
cat /proc/version # equal to: uname -r
uname -a

# shwo (and kill) processes using filename
fuser filename
fuser -k filename

# show netbios name of a host
nbtscan -r 192.168.1.0/24
# show ip of host with netbios name
nmblookup 192.168.0.1
# send a message to win host (Messenger service on NT and WinPopup on '98)
smbclient -M NETBIOS
# useful on linux and windows
netstat -nap


# who am i
echo $LOGNAME
echo $USER
id
whoami
who am i
logname

# change properties of a file
chattr
setfacl

# show the size of a dir
du -sh dirname

# reh hat version info
cat /proc/version
cat /etc/redhat-release
cat /etc/issue

# what is running on port 22
lsof -i :22

# rename a host
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/hosts
/etc/sysconfig/network

# show the size of pwd
du --max-depth=0 -h
# calculate the sum of first column in myfile
gawk 'BEGIN{sum=0;} sum = sum+ $1; END{print sum;}' myfile

# mysqldump synopsis
mysqldump -Q -p --opt -B aiqing avo geofuture leidi17 lizi17 phpmyadmin qiti swy 新COM > dbdump
mysqldump -Q -p --opt -B fiveone > fiveonedump
mysqldump -Q -p --opt -B newcom > newcomdump
mysqldump -Q -p --opt -B mysql > mysqldump
# update a database from update log files
ls -1 -t -r file_name.[0-9]* | xargs cat | mysql
# update a MySQL server from the binary log
mysqlbinlog log-file | mysql -h server_name
# mysql charset and collation
mysql> SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('jerry');
query("SET character_set_results = big5") ;
query("SET collation_connection = big5_chinese_ci ");
query("SET character_set_client = big5 ");
query("SET character_set_connection = big5 ");
mysql> SET character-set-client = x;
mysql> SET character-set-results = x;
mysql> SET character-set-connection = x;


# to encode one script do:
php -q encoder.php -f input.php -o output.php

# to encode directory do:
php -q encoder.php -rcf input_dir -o output_dir

# eigth modes of operation for tar
create extract list append update concatenate delete compare

# copy contents of a dir from one disk to another
cd sourcedir; tar -cf - . | (cd targetdir; tar -xf -)

# write raw data of kernel image to a floppy
dd if=babylinux.img of=/dev/fd0
cat babylinux.img >/dev/fd0

# set default editor ~/.muttrc
set editor="vi -c ':0;/^$'"

# set bash command line to vi mode
set -o vi

# set VIM vi improved macros
:map <BS> X
:set ww=h,l,b,s
inoremap <ESC> <ESC>:w %<CR>
noremap <ESC> :w %<CR>
map <Space> ^F
set ww=h,l,b,s
colorscheme murphy
noremap <F1> :!python %<CR>
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {}<ESC>i
inoremap ' ''<ESC>i
inoremap " ""<ESC>i
inoremap $_S $_SERVER['']<ESC>hi
inoremap $_G $_GET['']<ESC>hi
inoremap $_P $_POST['']<ESC>hi
inoremap $_R $_REQUEST['']<ESC>hi
inoremap $_C $_COOKIE['']<ESC>hi
# change multiline text with the (visually) selected in VIM vi improved
vlhy:%s?<td/_p/{-}td>?/=getreg('"')?g
# change absolute path to be relatvie w/ VIM vi improved
%s/(href/=|src/=)/"([^#/(mail|http)])//1="/2/gc


# start chinese input method IME
export LC_ALL=zh_CN.GB2312
export XMODIFIERS=@im=Chinput
chinput &
# change default IME
im-switch -m xim

# start X server
X&
# start X term on display 0
xauth add :0 . `mcookie`
xterm -display :0 &
<Ctr><Alt><F7>

# mount an iso file as virtual cdrom
mount -o iocharset=gb2312
mount -t msdos
mount -t iso9660 -o loop ./my.iso /mnt/iso
# mount and display Unicode file names
mount -t iso9660 -o loop codepage=cp950 iocharset=cp950 ./my.iso /mnt/iso
# mount shared dir over samba
mount.smb //host/sharename /mnt/directory/ -o username=guest,password=xxxxx,fmask=0,dmask=0,rw
mount -t smbfs -o username=guest //hostname/sharefile /path/to

# fetch all mails and do not delete the old ones from a remote mail server
fetchmail -u shaojiachao@5117.com -ak mail.5117.com

# convert image
convert -draw "image Over 10,20 0,0 logo.gif" 256.gif 256.jpg

# make a mirror of 8617.cn
wget -F --tries=30 -nd -P8617 -E -k -m -p -D www.8617.cn http://www.8617.cn

# change the color of command line (add to .bashrc)
PS1="/[/e[33;41m/][/u@devserver /w]/[/e[32;40m/]/[/e[01m/]#/[/e[0m/]"
# also works, but first command line maybe shortened to 70% of the screen width
PS1="/e[33;41m[/u@ /w]/e[32;40m/e[01m#/e[0m"

# pack a whole dir
tar cvfz xx.tar.gz ./* --exclude=dir1 --exclude=dir2
tar cvf - ./* | gzip -qc > back.tgz

# restore mysql db from a dump file
mysql -p < db.dump

# decoding error for chinese in Linux 8.0
export LC_ALL=en_US
export LANG=C

# control vsftpd
/etc/rc.d/init.d/xinetd restart

# a simple editor like WPS driven by hot keys ( ^KH for help)
joe

# Midnight Commander, like Norton Commander in DOS
# hot keys at screen bottom of the (diplayed as 1, 2 etc) stards for F1, F2 etc
mc

# a powerful ftp client, supporting wild cat and download of a whole dir
# anonymous login:
ncftp xxx.xxx.xxx.xxx

# a ftp tool with bash like job control, command completion and more
lftp

# an powerful email client
pine

# get version info of kernel
uname -a
guname # in X

# screenshot for text terminal
cat /dev/vcsX >screenshot # X stands for the no. of terminal (?)
script screen.log  # exit to stop

# run a command immune to hangups, with output to a non-tty
nohup command &

# make the shell a login shell with su
su - root

# print the name of the terminal
fgconsole
tty

# display brief info on a bash built-in command
help command

w
who
rwho -a
whoami
ftpwho

last
lastb

# show the amount of time since the last reboot
uptime

# check what distribution you are using
# (displayed on login, therefore it functions like /etc/motd )
cat /etc/issue

# (mnemonic: disk free) print disk info about all the filesystems
df -h # in human-readable form
# (mnemonic: disk usage) print detailed disk usage
du / -bh | more # for each subdirectory under PWD in human legible form

# show cpu info stored in /proc/cpu
cat /proc/cpuinfo
# list the interrupts in use (maybe useful before setting up new hardware)
cat /proc/interrupts
# Linux version and other info
cat /proc/version
# show the types of filesystems currently in use
cat /proc/filesystems
# show the setup of printers
cat /etc/printcap |more

# show the current user environment (in full)
set|more

# print kernel messages
# (so-called kernel ring buffer in /var/log/dmesg after bootup)
dmesg | less

# display all the configurable Linux kernel parameters.
sysctl -a |more

# lock a local (text mode) terminal.
vlock

# html editor in X ternimal
bluefish

# spell check an ASCII text file
# AbiWord, WordPerfect, StarOffice come with as-you-type spellchecking
aspell
ispell filename

# look up the dictionary on your system (/usr/share/dict/words) for thermo*
look thermo

which
whereis
whatis

# start another X-window session on the display 1 (default opened on display 0)
startx -- :1 &

# receive files using the Zmodem, Ymodem, or Xmodem protocol
rx

unarj e filename.arj
lha e filename.lha
uudecode -o outputfile filename
ar -x my_archive.a file1 file2

# run any command when the system load is low, CTRL-D to end
# (if logout, the process will keep running and the result will be emailed)
batch

# kill programs by name
killall program_name

# check and control the printers (? to see the list of available commands)
lpc
# show the content of the printer queue
lpq
# remove a printing job
lprm job_number

# execute my_command repeatedly at 60-second intervals (default to 2 seconds)
watch -n 60 my_command

linuxconf
netconf # a subset of linuxconf
mouseconf

# automatically determines and configures hardware
# (disable it if having mysterious problems with your mouse)
kudzu

# set the timezone for your system.
# UTC, Coordinated Universal Time, once called GMT, Greenwich Mean Time
# timestamps of files are always in UTC and displayed locally with time zone
timeconfig

# set linux system date and time to 2000-12-31 23:57
date 123123572000
# set your computer hardware clock from the current linux system time
setclock

# list files opened on your system
lsof

# tune up your parallel ports
tunelp

ntsysv
tksysv # X-based
# a tool to check/enable/disable system services
/sbin/chkconfig --level 123456 kudzu off
# to list all the services started/stopped under all runlevels, I use:
chkconfig --list | more
service --status-all
service wu-ftpd start
service smb restart

# check and fix the symbolic links
symlinks -r -cds /

# re-create the bindings and the cache for the loader of dynamic libraries ld
#   usually after an installation (automatically done in bootup)
ldconfig

# (mnemonic: make node) manually create a device file
mknod /dev/fd0 b 2 0
# restore the "audio" device that somehow screwed up
/dev/MAKEDEV audio

# hard drive partitioning utility, menu-based, easier than fdisk
cfdisk /dev/hda

# list the partition tables (including extended partitions) for all drives
sfdisk -l -x |more

# a partition manipulation Linux (ext2), and DOS (FAT and FAT32)
# (creation, destroying, moving, copying, shrinking, and extending)
parted /dev/hda

# perform a low-level formatting of a floppy, high density
# then make a Linux filesystem (-t ext2), checking/marking bad blocks (-c )
# making the filesystem is an equivalent to the high-level formatting
fdformat /dev/fd0H1440 # default 1440 kB, see ls /dev/fd0
mkfs -c -t ext2 /dev/fd0

# check a high-density floppy for bad blocks, does not modify the floppy
badblocks /dev/fd01440 1440
# umount it so that the data is not erased!
umount /dev/hda8
badblocks -n /dev/hda8
# mount back
mount /dev/hda8
# marks badblock
e2fsck -c /dev/hda8

init 1 # switch linux to single user mode, same as below
linux sigle # for grub prompt
# check and repair a filesystem (in runlevel 1)
fsck -t ext2 /dev/hda2

# adjust the tuneable parameter of an ext2 filesystem to ext3
tune2fs -j /dev/hda2

# (mnemonic: data duplicator, like DISKCOPY for DOS)
# create an image of a floppy to floppy_image in pwd
dd if=/dev/fd0H1440 of=floppy_image
# copy floppy_image to another floppy disk
dd if=floppy_image of=/dev/fd0H1440

mkbootdisk --device /dev/fd0 2.4.2-3

userdel user_name
groupadd group_name
chgrp friends my_file
chmod g=rw,o= my_file
usermod
groupmod
userconf

# change the your information as displayed by finger
# (mnemonic: change full name)
chfn

# set the password expiry for login_name (mnemonic: change age)
chage -M 100 login_name

quota username
setquota username
quotaon /dev/hda
quotaoff /dev/hda

# run command with su
sudo /sbin/shutdown -h now

# verify the integrity of the password and group files.
pwck
grpck

rpm -ivh package_name-version.platform.rpm

route -n
host host_to_find
nslookup host_to_find
dig ip_to_find
traceroute host_to_trace
mtr host_to_trace

# status of a networked MS Windows host (with an NetBIOS name
nmblookup -A ip_address # like nbtstat for DOS

echo 1 > /proc/sys/net/ipv4/ip_forward
ipfwadm-wrapper -F -p deny
ipfwadm-wrapper -F -a m -S xxx.xxx.xxx.0/24 -D 0.0.0.0/0
ipchains -L
iptables -L
ifconfig
netstat | more

nmap ip_number

# eject or close other removable media, defaults to cdrom
eject -vn -t /dev/sda4

# read the content of a file for you
festival --tts my_file.txt

# give me a description of an image file my_picture,
#   format, type, class, size in pixels, number of colours, size in bytes, etc
identify -verbose my_picture

# restore a screwed-up terminal to default (remove funny chars after cat)
reset
# reboot
<Ctrl><Alt><Del>
# scroll terminal output up/down
<Shift><PgUp>
<Shift><PgDown>
# change to the previous/next X-server resolution
<Ctrl><Alt><->
<Ctrl><Alt><+>
# kill the window I am going to click
<Ctrl><Alt><Esc>
# kill the current X-windows server
<Ctrl><Alt><BkSpc>
# send [End-of-File] to the current process or log out
<Ctrl>d
# stop the transfer to the terminal.
<Ctrl>s
# resume the transfer to the terminal (when the terminal stops responding)
<Ctrl>q
# send the current process to the background.
<Ctrl>z
# walk through windows
<Alt><Tab>
<Alt><Shift><Tab>
# walk through desktops
<Ctrl><Tab>
<Ctrl><Shift><Tab>
# show the table of processes, kill any or send other signals to them
<Ctrl><Esc>
# access the K-menu, equivalent to MS Windows Start menu
<Alt><F1>
# emulate the mouse using the arrow keys on the keyboard
<Alt><F12>
# drag (any part of) a window to move it
<Alt><LeftMouseButton>
# take a snapshot of the current window into the clipboard
<Alt><PrintScreen>
# take a snapshot of the entire desktop into the clipboard
<Ctrl><Alt><PrintScreen>
# lock the desktop
<Ctrl><Alt><l>
# toggle hide/show the desktop
# (great to hide the Solitaire game when your boss walks in)
<Ctrl><Alt><d>

# kernel level key combinations
# meant for debugging purposes and in an emergency (mostly developers)
<Alt><SysRq><command_key>
# enabled/disabled by setting the relevant kernel variable to 1/0
echo "1" > /proc/sys/kernel/sysrq
# kill all processes, including X, known as Secure Access Key SAK
<Alt><SysRq><k>
# send the TERM signal to all running processes except init, exit after confirm
<Alt><SysRq><e>
# send KILL signal to all processes except init (powerful than <Alt><SysRq><e>
#   but some process may exit abnormally)
<Alt><SysRq><i>
# send the KILL signal to all processes, including init
<Alt><SysRq><l>
# run an emergency sync (cache write) on all mounted filesystems
# (to prevent data loss)
<Alt><SysRq><s>
# remount all mounted filesystems as read-only (like <Alt><SysRq><s>,
# but, if successful, fsck won't check all filesystems after reboot)
<Alt><SysRq><u>
# turn off keyboard raw mode
# (useful when X session hangs: afterward, <CTRL><ALT><DEL>)
<Alt><SysRq><r>
# reboot immediately without syncing or unmounting your disks
<Alt><SysRq><b>
# shut the system off
<Alt><SysRq><o>
# dump the current registers and flags to your console
<Alt><SysRq><p>
# dump a list of current tasks and their information to your console
<Alt><SysRq><t>
# dump memory info to your console
<Alt><SysRq><m>
# set the console log level
<Alt>SysRq><digit>
# display help
<Alt><SysRq><h> # also, any other unsupported <Alt><SysRq><key>


阅读更多
个人分类: linux相关
想对作者说点什么? 我来说一句

常用Linux命令与应用

2010年05月31日 576KB 下载

黑客常用Linux命令

2011年12月21日 5KB 下载

Linux常用的60个命令

2018年04月04日 965KB 下载

linux常用命令

2015年05月04日 197KB 下载

运维工程师必会的109个Linux命令

2016年03月07日 5.07MB 下载

Linux常用命令大全

2018年01月08日 22KB 下载

linuxc常用命令

2018年03月18日 2.75MB 下载

没有更多推荐了,返回首页

不良信息举报

我常用的LINUX命令

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭