A complete collection of Linux common commands necessary for testers... [dry goods sharing]

A complete collection of Linux common commands (very complete!!!)

I have been dealing with Linux recently, and I feel pretty good. I think Linux is more troublesome than windows because many things need to be controlled by commands. Of course, this is also the reason why many people like linux. It is relatively short but powerful. I will list the commands I have learned for your reference only:

system message

  • arch Displays the processor architecture of the machine
  • uname -m shows the processor architecture of the machine
  • uname -r shows the kernel version in use
  • dmidecode -q show hardware system components - (SMBIOS/DMI)
  • hdparm -i /dev/hda lists the architectural properties of a disk
  • hdparm -tT /dev/sda performs a test read on the disk
  • cat /proc/cpuinfo display CPU info information
  • cat /proc/interrupts shows interrupts
  • cat /proc/meminfo check memory usage
  • cat /proc/swaps shows which swaps are used
  • cat /proc/version shows the version of the kernel
  • cat /proc/net/dev displays network adapters and statistics
  • cat /proc/mounts shows mounted filesystems
  • lspci -tv list PCI devices
  • lsusb -tv show usb devices
  • date display system date
  • cal 2007 displays the calendar for 2007
  • date 041217002007.00 Set date and time - month day hour minute year.second
  • clock -w save time modification to BIOS

Shutdown (shutdown, restart and logout of the system)

  • shutdown -h now shut down the system
  • init 0 shut down the system
  • telinit 0 shut down the system
  • shutdown -h hours:minutes & Shut down the system according to the scheduled time
  • shutdown -c cancels shutting down the system at a scheduled time
  • shutdown -r now restart
  • reboot reboot
  • logout

files and directories

  • cd /home into the '/home' directory'
  • cd .. Return to the previous directory
  • cd ../.. Return to the previous two directories
  • cd into your home directory
  • cd ~user1 enters the personal home directory
  • cd - return to last directory
  • pwd show working path
  • ls View files in a directory
  • ls -F View files in a directory
  • ls -l displays detailed information about files and directories
  • ls -a show hidden files
  • ls *[0-9]* Display file and directory names containing numbers
  • tree Displays the tree structure of files and directories starting from the root directory
  • lstree displays the tree structure of files and directories starting from the root directory
  • mkdir dir1 creates a directory called 'dir1'
  • mkdir dir1 dir2 creates two directories at the same time
  • mkdir -p /tmp/dir1/dir2 creates a directory tree
  • rm -f file1 Delete a file called 'file1''
  • rmdir dir1 removes a directory called 'dir1'
  • rm -rf dir1 Delete a directory called 'dir1' and delete its contents
  • rm -rf dir1 dir2 delete both directories and their contents
  • mv dir1 new_dir rename/move a directory
  • cp file1 file2 copies a file
  • cp dir/* . Copy all files in a directory to the current working directory
  • cp -a /tmp/dir1 . Copy a directory to the current working directory
  • cp -a dir1 dir2 copy a directory
  • cp -r dir1 dir2 copy a directory and subdirectories
  • ln -s file1 lnk1 creates a soft link pointing to a file or directory
  • ln file1 lnk1 creates a physical link to a file or directory
  • touch -t 0712250000 file1 Modify the timestamp of a file or directory - (YYMMDDhhmm)
  • file file1 outputs the mime type of the file as text
  • iconv -l list known encodings
  • iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.
  • find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)

file search

  • find / -name file1 starts from '/' to enter the root file system to search for files and directories
  • find / -user user1 searches for files and directories belonging to user 'user1'
  • find /home/user1 -name \*.bin searches for files ending with '.bin' in the directory '/home/user1'
  • find /usr/bin -type f -atime +100 Search for executable files that have not been used in the past 100 days
  • find /usr/bin -type f -mtime -10 Search for files created or modified within 10 days
  • find / -name \*.rpm -exec chmod 755 '{}' \; Search for files ending with '.rpm' and define their permissions
  • find / -xdev -name \*.rpm Search for files ending with '.rpm', ignoring removable devices such as CD-ROMs and shortcuts
  • locate \*.ps finds files ending in '.ps' - run 'updatedb' first
  • whereis halt shows the location of a binary, source or man
  • which halt displays the full path to a binary or executable

mount a filesystem

  • mount /dev/hda2 /mnt/hda2 mounts a disk called hda2 - make sure the directory '/mnt/hda2' already exists
  • umount /dev/hda2 Unmount a disk called hda2 - first exit from the mount point '/mnt/hda2'
  • fuser -km /mnt/hda2 Force unmount when device is busy
  • umount -n /mnt/hda2 runs the unmount without writing the /etc/mtab file - useful when the file is read-only or when the disk is full
  • mount /dev/fd0 /mnt/floppy mount a floppy disk
  • mount /dev/cdrom /mnt/cdrom mount a cdrom or dvdrom
  • mount /dev/hdc /mnt/cdrecorder mount a cdrw or dvdrom
  • mount /dev/hdb /mnt/cdrecorder mount a cdrw or dvdrom
  • mount -o loop file.iso /mnt/cdrom mount a file or ISO image file
  • mount -t vfat /dev/hda5 /mnt/hda5 mount a Windows FAT32 file system
  • mount /dev/sda1 /mnt/usbdisk mount a usb shortcut or flash device
  • mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share mount a windows network share

disk space

  • df -h displays a list of mounted partitions
  • ls -lSr |more Arrange files and directories by size
  • du -sh dir1 Estimate the disk space used by the directory 'dir1'
  • du -sk * | sort -rn Display the size of files and directories in order based on the size of the capacity
  • rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n Display the space used by the installed rpm packages in turn based on size (fedora, redhat-like systems)
  • dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n Display the space used by the installed deb package according to the size (ubuntu, debian-like system )

users and groups

  • groupadd group_name Create a new user group
  • groupdel group_name delete a user group
  • groupmod -n new_group_name old_group_name Rename a user group
  • useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 Create a user belonging to the "admin" user group
  • useradd user1 creates a new user
  • userdel -r user1 delete a user ('-r' exclude home directory)
  • usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 Modify user attributes
  • passwd Change password
  • passwd user1 Modify a user's password (only root execution is allowed)
  • chage -E 2005-12-31 user1 Set the expiration date of the user password
  • pwck checks '/etc/passwd' for file format and syntax corrections and existing users
  • grpck checks '/etc/passwd' for file format and syntax corrections and existing groups
  • newgrp group_name Login into a new group to change the default group for newly created files

File permissions - use "+" to set permissions, "-" to cancel

  • ls -lh show permissions
  • ls /tmp | pr -T5 -W$COLUMNS Divide the terminal into 5 columns for display
  • chmod ugo+rwx directory1 Set the directory owner (u), group (g) and others (o) to read (r), write (w) and execute (x) permissions
  • chmod go-rwx directory1 delete group (g) and others (o) read, write and execute permissions on the directory
  • chown user1 file1 Change the owner attribute of a file
  • chown -R user1 directory1 Change the owner attribute of a directory and change the attributes of all files in the directory at the same time
  • chgrp group1 file1 change the group of the file
  • chown user1:group1 file1 Change the owner and group attributes of a file
  • find / -perm -u+s lists all files in a system that use SUID control
  • chmod u+s /bin/file1 sets the SUID bit of a binary file - the user running the file is also given the same permissions as the owner
  • chmod us /bin/file1 disable SUID bit for a binary file
  • chmod g+s /home/public Set a directory's SGID bit - like SUID, but for directories
  • chmod gs /home/public disables the SGID bit for a directory
  • chmod o+t /home/public Set a file's STIKY bit - allow only legal owners to delete files
  • chmod ot /home/public disables the STIKY bit for a directory

File special attributes - use "+" to set permissions, "-" to cancel

  • chattr +a file1 only allows reading and writing files in append mode
  • chattr +c file1 allows this file to be automatically compressed/decompressed by the kernel
  • chattr +d file1 When doing a file system backup, the dump program will ignore this file
  • chattr +i file1 set to an immutable file that cannot be deleted, modified, renamed or linked
  • chattr +s file1 allows a file to be safely deleted
  • chattr +S file1 Once the application program writes to this file, the system immediately writes the modified result to the disk
  • chattr +u file1 If the file is deleted, the system will allow you to restore the deleted file later
  • lsattr displays special attributes

Pack and compress files

  • bunzip2 file1.bz2 unzip a file called 'file1.bz2'
  • bzip2 file1 compresses a file called 'file1'
  • gunzip file1.gz decompresses a file called 'file1.gz'
  • gzip file1 Compress a file called 'file1'
  • gzip -9 file1 maximum compression
  • rar a file1.rar test_file creates a package called 'file1.rar'
  • rar a file1.rar file1 file2 dir1 compress 'file1', 'file2' and directory 'dir1' at the same time
  • rar x file1.rar decompress rar package
  • unrar x file1.rar decompress rar package
  • tar -cvf archive.tar file1 creates an uncompressed tarball
  • tar -cvf archive.tar file1 file2 dir1 Create an archive containing 'file1', 'file2' and 'dir1'
  • tar -tf archive.tar displays the contents of a package
  • tar -xvf archive.tar releases a package
  • tar -xvf archive.tar -C /tmp release the compressed package to the /tmp directory
  • tar -cvfj archive.tar.bz2 dir1 Create a compressed package in bzip2 format
  • tar -jxvf archive.tar.bz2 decompress a compressed package in bzip2 format
  • tar -cvfz archive.tar.gz dir1 Create a compressed package in gzip format
  • tar -zxvf archive.tar.gz decompresses a compressed package in gzip format
  • zip file1.zip file1 creates a compressed package in zip format
  • zip -r file1.zip file1 file2 dir1 Compress several files and directories into a compressed package in zip format at the same time
  • unzip file1.zip Unzip a compressed package in zip format

RPM package - (Fedora, Redhat and similar systems)

  • rpm -ivh package.rpm install an rpm package
  • rpm -ivh --nodeeps package.rpm install an rpm package and ignore dependency warnings
  • rpm -U package.rpm updates an rpm package without changing its configuration file
  • rpm -F package.rpm update a confirmed installed rpm package
  • rpm -e package_name.rpm delete a rpm package
  • rpm -qa displays all installed rpm packages in the system
  • rpm -qa | grep httpd displays all rpm packages with "httpd" in their name
  • rpm -qi package_name Get specific information about an installed package
  • rpm -qg "System Environment/Daemons" displays the rpm package of a component
  • rpm -ql package_name displays a list of files provided by an installed rpm package
  • rpm -qc package_name displays a list of configuration files provided by an installed rpm package
  • rpm -q package_name --whatrequires displays a list of dependencies with an rpm package
  • rpm -q package_name --whatprovides displays the volume occupied by an rpm package
  • rpm -q package_name --scripts show scripts executed during installation/removal
  • rpm -q package_name --changelog displays the modification history of an rpm package
  • rpm -qf /etc/httpd/conf/httpd.conf Confirm which rpm package provides the given file
  • rpm -qp package.rpm -l displays a list of files provided by an rpm package that has not been installed
  • rpm --import /media/cdrom/RPM-GPG-KEY import public key digital certificate
  • rpm --checksig package.rpm confirm the integrity of an rpm package
  • rpm -qa gpg-pubkey Confirm the integrity of all installed rpm packages
  • rpm -V package_name Check file size, permission, type, owner, group, MD5 check and last modification time
  • rpm -Va checks all installed rpm packages on the system - use with care
  • rpm -Vp package.rpm Confirm that an rpm package is not installed
  • rpm2cpio package.rpm | cpio --extract --make-directories *bin* Run executables from an rpm package
  • rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm installs a built package from an rpm source
  • rpmbuild --rebuild package_name.src.rpm build an rpm package from an rpm source

YUM Package Upgrader - (Fedora, RedHat and similar)

  • yum install package_name download and install an rpm package
  • yum localinstall package_name.rpm will install an rpm package, using your own software repository to resolve all dependencies for you
  • yum update package_name.rpm updates all installed rpm packages in the current system
  • yum update package_name updates an rpm package
  • Yum remove package_name deletes an rpm package
  • yum list lists all packages installed in the current system
  • yum search package_name searches for packages in the rpm repository
  • yum clean packages to clean up rpm cache and delete downloaded packages
  • yum clean headers delete all header files
  • yum clean all removes all cached packages and header files

DEB package (Debian, Ubuntu and similar)

  • dpkg -i package.deb install/update a deb package
  • dpkg -r package_name removes a deb package from the system
  • dpkg -l displays all deb packages installed in the system
  • dpkg -l | grep httpd displays all deb packages with "httpd" in their names
  • dpkg -s package_name Get information about a particular package already installed on the system
  • dpkg -L package_name displays a list of files provided by a deb package already installed in the system
  • dpkg --contents package.deb display a list of files provided by a package that is not yet installed
  • dpkg -S /bin/ping Confirm which deb package provides the given file

APT software tools (Debian, Ubuntu and similar systems)

  • apt-get install package_name installs/updates a deb package
  • apt-cdrom install package_name install/update a deb package from CD
  • apt-get update upgrades packages in the list
  • apt-get upgrade upgrades all installed software
  • apt-get remove package_name removes a deb package from the system
  • apt-get check confirms that the dependent software warehouse is correct
  • apt-get clean cleans the cache from downloaded packages
  • apt-cache search searched-package returns the package name containing the searched string

view file content

  • cat file1 looks forward through the contents of the file starting from the first byte
  • tac file1 view the contents of a file in reverse, starting from the last line
  • more file1 view the contents of a long file
  • less file1 similar to the 'more' command, but it allows reverse operations on files as well as forward operations
  • head -2 file1 View the first two lines of a file
  • tail -2 file1 View the last two lines of a file
  • tail -f /var/log/messages View what is added to a file in real time

text processing

  • cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT
  • cat file1 | command( sed, grep, awk, grep, etc...) > result.txt Merge the detailed text of a file and write the introduction into a new file
  • cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt Combine the detailed text of a file and write the introduction into an existing file
  • grep Aug /var/log/messages looks for the keyword "Aug" in the file '/var/log/messages'
  • grep ^Aug /var/log/messages Find words starting with "Aug" in the file '/var/log/messages'
  • grep [0-9] /var/log/messages selects all lines containing numbers in the '/var/log/messages' file
  • grep Aug -R /var/log/* Search for the string "Aug" in the directory '/var/log' and subsequent directories
  • sed 's/stringa1/stringa2/g' example.txt Replace "string1" in the example.txt file with "string2"
  • sed '/^$/d' example.txt removes all blank lines from the example.txt file
  • sed '/ *#/d; /^$/d' example.txt removes all comments and blank lines from the example.txt file
  • echo 'esempio' | tr '[:lower:]' '[:upper:]' Merge the contents of the upper and lower cells
  • sed -e '1d' result.txt excludes the first line from the file example.txt
  • sed -n '/stringa1/p' View only lines containing the word "string1"
  • sed -e 's/ *$//' example.txt deletes the last blank character of each line
  • sed -e 's/stringa1//g' example.txt removes only the word "string1" from the document and keeps the rest
  • sed -n '1,5p;5q' example.txt View the content from the first line to the fifth line
  • sed -n '5p;5q' example.txt View line 5
  • sed -e 's/00*/0/g' example.txt replaces multiple zeros with a single zero
  • cat -n file1 indicates the number of lines in the file
  • cat example.txt | awk 'NR%2==1' deletes all even-numbered lines in the example.txt file
  • echo abc | awk '{print $1}' View the first column of a line
  • echo abc | awk '{print $1,$3}' View the first and third columns of a line
  • paste file1 file2 Merge the contents of two files or two columns
  • paste -d '+' file1 file2 Merge the contents of two files or two columns, separated by "+" in the middle
  • sort file1 file2 Sort the contents of two files
  • sort file1 file2 | uniq Take out the union of two files (only one copy of duplicate lines is kept)
  • sort file1 file2 | uniq -u remove intersection, leave other lines
  • sort file1 file2 | uniq -d Take out the intersection of two files (leave only files that exist in both files)
  • comm -1 file1 file2 Compare the contents of two files and delete only the contents contained in 'file1'
  • comm -2 file1 file2 Compare the contents of two files and delete only the contents contained in 'file2'
  • comm -3 file1 file2 Compare the contents of two files and delete only the parts common to both files

Character setting and file format conversion

  • dos2unix filedos.txt fileunix.txt converts a text file format from MSDOS to UNIX
  • unix2dos fileunix.txt filedos.txt Convert a text file format from UNIX to MSDOS
  • recode ..HTML < page.txt > page.html converts a text file into html
  • recode -l | more show all allowed conversion formats

file system analysis

  • badblocks -v /dev/hda1 Check for bad blocks on disk hda1
  • fsck /dev/hda1 repair/check the integrity of the linux filesystem on the hda1 disk
  • fsck.ext2 /dev/hda1 Repair/check the integrity of the ext2 filesystem on the hda1 disk
  • e2fsck /dev/hda1 Repair/check the integrity of the ext2 filesystem on the hda1 disk
  • e2fsck -j /dev/hda1 Repair/check the integrity of the ext3 filesystem on the hda1 disk
  • fsck.ext3 /dev/hda1 Repair/check the integrity of the ext3 filesystem on the hda1 disk
  • fsck.vfat /dev/hda1 Repair/check the integrity of the fat file system on the hda1 disk
  • fsck.msdos /dev/hda1 repair/check the integrity of the dos file system on the hda1 disk
  • dosfsck /dev/hda1 repair/check the integrity of the dos filesystem on disk hda1

initialize a filesystem

  • mkfs /dev/hda1 creates a file system on the hda1 partition
  • mke2fs /dev/hda1 creates a linux ext2 file system in the hda1 partition
  • mke2fs -j /dev/hda1 Create a linux ext3 (journal) file system in the hda1 partition
  • mkfs -t vfat 32 -F /dev/hda1 Create a FAT32 file system
  • fdformat -n /dev/fd0 format a floppy disk
  • mkswap /dev/hda3 creates a swap file system

SWAP file system

  • mkswap /dev/hda3 creates a swap file system
  • swapon /dev/hda3 enables a new swap file system
  • swapon /dev/hda2 /dev/hdb3 enable two swap partitions

backup

  • dump -0aj -f /tmp/home0.bak /home Make a full backup of the '/home' directory
  • dump -1aj -f /tmp/home0.bak /home Make an interactive backup of the '/home' directory
  • restore -if /tmp/home0.bak restore an interactive backup
  • rsync -rogpav --delete /home /tmp to synchronize the directories on both sides
  • rsync -rogpav -e ssh --delete /home ip_address:/tmp rsync via SSH channel
  • rsync -az -e ssh --delete ip_addr:/home/public /home/local Synchronize a remote directory to a local directory via ssh and compression
  • rsync -az -e ssh --delete /home/local ip_addr:/home/public Synchronize local directory to remote directory via ssh and compression
  • dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' Perform an operation of backing up the local disk on the remote host through ssh
  • dd if=/dev/sda of=/tmp/file1 backup disk contents to a file
  • tar -Puf backup.tar /home/user Perform an interactive backup of the '/home/user' directory
  • ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' Copy a directory content in a remote directory via ssh
  • ( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' Copy a local directory in a remote directory via ssh
  • tar cf - . | (cd /tmp/backup ; tar xf - ) Copy a directory to another place locally, retaining the original permissions and links
  • find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents Find and copy all files ending with '.txt' from one directory to another
  • find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 Find all files ending with '.log' and make a bzip package
  • dd if=/dev/hda of=/dev/fd0 bs=512 count=1 Do an action to copy the content of MBR (Master Boot Record) to the floppy disk
  • dd if=/dev/fd0 of=/dev/hda bs=512 count=1 restore MBR content from backup already saved to floppy

CD

  • cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force Empty a rewritable CD
  • mkisofs /dev/cdrom > cd.iso Create an iso image file of a CD on disk
  • mkisofs /dev/cdrom | gzip > cd_iso.gz Create a compressed CD-ROM iso image file on disk
  • mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd Create an iso image file of a directory
  • cdrecord -v dev=/dev/cdrom cd.iso Burn an ISO image file
  • gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - burn a compressed ISO image
  • mount -o loop cd.iso /mnt/iso Mount an ISO image file
  • cd-paranoia -B rip tracks from a CD to wav files
  • cd-paranoia -- "-3" rip tracks from a CD to wav files (parameter -3)
  • cdrecord --scanbus scan the bus to identify scsi channels
  • dd if=/dev/hdc | md5sum Verify the md5sum encoding of a device, such as a CD

Network - (Ethernet and WIFI Wireless )

  • ifconfig eth0 shows the configuration of an ethernet card
  • ifup eth0 enable an 'eth0' network device
  • ifdown eth0 disable an 'eth0' network device
  • ifconfig eth0 192.168.1.1 netmask 255.255.255.0 Control IP address
  • ifconfig eth0 promisc set 'eth0' to promiscuous mode to sniff packets (sniffing)
  • dhclient eth0 enable 'eth0' in dhcp mode
  • route -n show routing table
  • route add -net 0/0 gw IP_Gateway configura default gateway
  • route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure static route to reach network '192.168.0.0/16'
  • route del 0/0 gw IP_gateway remove static route
  • echo "1" > /proc/sys/net/ipv4/ip_forward activate ip routing
  • hostname show hostname of system
  • host http://www.example.com lookup hostname to resolve name to ip address and viceversa
  • nslookup http://www.example.com lookup hostname to resolve name to ip address and viceversa
  • ip link show show link status of all interfaces
  • mii-tool eth0 show link status of 'eth0'
  • ethtool eth0 show statistics of network card 'eth0'
  • netstat -tup show all active network connections and their PID
  • netstat -tupl show all network services listening on the system and their PID
  • tcpdump tcp port 80 show all HTTP traffic
  • iwlist scan show wireless networks
  • iwconfig eth1 show configuration of a wireless network card
  • hostname show hostname
  • host http://www.example.com lookup hostname to resolve name to ip address and viceversa
  • nslookup http://www.example.com lookup hostname to resolve name to ip address and viceversa
  • whois http://www.example.com lookup on Whois database

Finally share the benefits of a tester!

 

These materials should be the most comprehensive and complete preparation warehouse for [software testing] friends. This warehouse has also accompanied tens of thousands of test engineers through the most difficult journey, and I hope it can help you! Partners can click the small card below to receive    

Guess you like

Origin blog.csdn.net/kk_lzvvkpj/article/details/132348385