Linux commands: Difference between revisions
| Line 112: | Line 112: | ||
== mysql operation == | == mysql operation == | ||
=== export MySql sql file === | === export MySql sql file === | ||
* {{Gd}} export the compressed *.sql file (especially for BIG sql file). It will show a progress bar and estimated time to complete the mysqldump<ref>[http://dba.stackexchange.com/questions/17367/how-can-i-monitor-the-progress-of-an-import-of-a-large-sql-file mysql - How can I monitor the progress of an import of a large .sql file? - Database Administrators Stack Exchange]</ref>: | * {{Gd}} export the compressed *.sql file (especially for BIG sql file). It will show a progress bar and estimated time to complete the mysqldump<ref>[http://dba.stackexchange.com/questions/17367/how-can-i-monitor-the-progress-of-an-import-of-a-large-sql-file mysql - How can I monitor the progress of an import of a large .sql file? - Database Administrators Stack Exchange]</ref><ref>[https://dev.mysql.com/doc/refman/5.1/en/mysqldump.html MySQL :: MySQL 5.1 Reference Manual :: 4.5.4 mysqldump — A Database Backup Program]</ref>: | ||
*# (optional if the {{kbd | key =pv}} was not installed) {{kbd | key =yum install pv}} for RHEL / CentOS / SL / Fedora Linux<ref>[http://www.cyberciti.biz/open-source/command-line-hacks/pv-command-examples/ Linux / Unix pv Command: Monitor Progress of Data Sent Via a Pipe]</ref> | *# (optional if the {{kbd | key =pv}} was not installed) {{kbd | key =yum install pv}} for RHEL / CentOS / SL / Fedora Linux<ref>[http://www.cyberciti.biz/open-source/command-line-hacks/pv-command-examples/ Linux / Unix pv Command: Monitor Progress of Data Sent Via a Pipe]</ref> | ||
*# (for InnoDB tables){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --single-transaction DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} <ref>[http://journal.andrewloe.com/2009/05/12/pv-gzip-mysql/ pv + gzip + mysql — W. Andrew Loe III: Journal]</ref><ref>(if have permission to LOCK TABLES){{kbd | key = <nowiki>mysqldump -h localhost -u username -p DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} (if have no permission to LOCK TABLES){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --lock-tables=false DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} via [http://stackoverflow.com/questions/104612/run-mysqldump-without-locking-tables mysql - Run MySQLDump without Locking Tables - Stack Overflow]</ref> and press {{kbd | key = <nowiki>Enter</nowiki> }} | *# (for InnoDB tables){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --force --single-transaction DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} <ref>[http://journal.andrewloe.com/2009/05/12/pv-gzip-mysql/ pv + gzip + mysql — W. Andrew Loe III: Journal]</ref><ref>(if have permission to LOCK TABLES){{kbd | key = <nowiki>mysqldump -h localhost -u username -p DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} (if have no permission to LOCK TABLES){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --lock-tables=false DATA_BASE_NAME | pv | gzip -c > database.sql.gz</nowiki>}} via [http://stackoverflow.com/questions/104612/run-mysqldump-without-locking-tables mysql - Run MySQLDump without Locking Tables - Stack Overflow]</ref> and press {{kbd | key = <nowiki>Enter</nowiki> }} | ||
*# enter {{kbd | key = <nowiki>password</nowiki> }} and press {{kbd | key = <nowiki>Enter</nowiki> }} | *# enter {{kbd | key = <nowiki>password</nowiki> }} and press {{kbd | key = <nowiki>Enter</nowiki> }} | ||
* export the *.sql file. It will show a progress bar and estimated time to complete the mysqldump <ref>[http://dubbs.github.io/blog/2013/09/05/mysql-import-slash-export-progress-bar/ MySQL Import/Export Progress Bar - Kevin Warrington]</ref>: | * export the *.sql file. It will show a progress bar and estimated time to complete the mysqldump <ref>[http://dubbs.github.io/blog/2013/09/05/mysql-import-slash-export-progress-bar/ MySQL Import/Export Progress Bar - Kevin Warrington]</ref>: | ||
*# (optional if the {{kbd | key =pv}} was not installed) {{kbd | key =yum install pv}} for RHEL / CentOS / SL / Fedora Linux | *# (optional if the {{kbd | key =pv}} was not installed) {{kbd | key =yum install pv}} for RHEL / CentOS / SL / Fedora Linux | ||
*# (for InnoDB tables){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --single-transaction DATA_BASE_NAME | pv > database.sql</nowiki>}} and press {{kbd | key = <nowiki>Enter</nowiki> }} | *# (for InnoDB tables){{kbd | key = <nowiki>mysqldump -h localhost -u username -p --force --single-transaction DATA_BASE_NAME | pv > database.sql</nowiki>}} and press {{kbd | key = <nowiki>Enter</nowiki> }} | ||
*# enter {{kbd | key = <nowiki>password</nowiki> }} and press {{kbd | key = <nowiki>Enter</nowiki> }} | *# enter {{kbd | key = <nowiki>password</nowiki> }} and press {{kbd | key = <nowiki>Enter</nowiki> }} | ||
* export the *.sql file | * export the *.sql file | ||
Revision as of 09:53, 13 March 2014
(1) alternative Linux commands to complete the same task, (2) The equivalent or similar commands between Windows and Linux system.
text file manipulation
display the first lines of text file
- head [options] filename (OS: Linux
) - vi [options] filename (and press gg) (Linux
) - vim [options] filename (and press gg) (Linux
); Open file and press gg for gVim (Win
)
display the last few lines of text file
- tail [options] filename (Linux
) - vi [options] filename (and press G) (Linux
) - vim [options] filename (and press G) (Linux
); Open file and press G for gVim (Win
) - Tail for Win32 GUI interface (Win
)
not support Unicode file for v.4.2.6
Display the full text file
- vi [options] filename (Linux
) - cat filename (Linux
)
Save a Unix manpage as plain text
- man man | col -b > man.txt Thanks! Save a Unix manpage as plain text
Search text in a file
- grep command for multiple files: grep -ir "string to search" /path/to/directory or grep keyword /path/to/file (Linux
) - (1)vim [options] filename (2)press /keyword (Linux
) - cat & grep: cat /path/to/file | grep keyword (Linux
) keyword is case sensitive
file operation
find a file
- find (Linux
) ex: find / -iname filename Find the case-insensitive file name Under the path / (root folder) [2]
copy old directory to new directory
- cp -a old_dir new_dir/ (Linux
) - copy /Y old_dir new_dir/ (Win
)[5] - make new directory & copy all old files to new directory
- mkdir new_dir
- cp old_dir/* new_dir
download file from remote server
- FTP
- wget (with progress bar): wget http://path.to/file
- SVN update: svn up http://remote.svn.server/path/ /local/path/ --username=your_account and key in your SVN password [6]
- more on File transfer methods
delete files or directory
- rm -rf /Name_of_directory (Linux
)[7] - del Name_of_directory (Win
)
- After executed del Name_of_directory but the empty directory directory_name will be left.
- Command delete is not available in Win XP
- rsync --delete-before -a -H -v --progress --stats /path/to/empty/folder/ /path/to/target_folder_will_be_deleted/ (Linux
)[8] un-verified
rename (move) files or directory
- mv old_folder_name new_folder_name (Linux
)[9] - mv /path/to/file /path/to/new_folder_name (Linux
) - rename old_folder_name new_folder_name (Win
)[10]
list directory or files / list directory contents
- ls (Linux
) ex: ls -lh List detailed information of files [11] [12] - dir (Win
) ex: dir/s/b is equal to Linux
find /path/to/files/ -print [13]
show the current directory
- pwd(Linux
) - echo %cd%(Win
) [14]
file compression and decompression
compress
- pv big.file | gzip > big.file.gz(Linux
)[15] keep the original file - gzip -v big.file(Linux
) NOT keep the original file
decompress
- gunzip -c big.file.gz > big.file(Linux
) keep the gz file[16] - gzip -d big.file.gz(Linux
) NOT keep the gz file
network
show ip
ping
You may got no response if the server was disabled the ICMP (Internet Control Message Protocol) response.
whois: search the information of domain (related: Domain Name Register)
- whois domain (Linux
or Win
: require to install whois for windows)
apache operation
check apache servie is running or not
- service --status-all | grep -i httpd (Linux
[19][20]) - netstat -npl | grep httpd for Linux
[21] - netstat -an | find /i "listening" (Win
) find the local open ports & find local address TCP 0.0.0.0:80 is listening[22] - more on connection test...
Where is apache installed?[23]
- cat /etc/rc.d/rc.local if the apache service is already launched
check which mpm (multi processing module) apache is running
- httpd -l (Linux
& Win
) ex: Linux
/usr/local/httpd/bin/httpd -l or Win
x:\apache\bin>httpd -l where x:\apache is the installation folder of apache [24]
mysql operation
export MySql sql file
export the compressed *.sql file (especially for BIG sql file). It will show a progress bar and estimated time to complete the mysqldump[25][26]:
- export the *.sql file. It will show a progress bar and estimated time to complete the mysqldump [30]:
- (optional if the pv was not installed) yum install pv for RHEL / CentOS / SL / Fedora Linux
- (for InnoDB tables)mysqldump -h localhost -u username -p --force --single-transaction DATA_BASE_NAME | pv > database.sql and press Enter
- enter password and press Enter
- export the *.sql file
- mysqldump -h localhost -u username -p DATA-BASE-NAME > /path/to/database.sql
import MySql sql file
Notice: existing database will be overwritten
Import the compressed *.sql file with gzip (especially for BIG sql file). It will show a progress bar and estimated time to complete the mysql command:
- (optional if the pv was not installed) yum install pv for RHEL / CentOS / SL / Fedora Linux
- pv database.sql.gz | gunzip | mysql -u username -p -h localhost DATA-BASE-NAME [31] and press Enter
- enter password and press Enter
- Import *.sql file:
- (optional if the .sql file was compressed) unzip data.zip or gzip -d data.gz if the file was compressed by gzip
- mysql -u username -p -h localhost DATA-BASE-NAME < data.sql [32] and press Enter
- enter password and press Enter
- Import the *.sql file (especially for BIG sql file). It will show a progress bar and estimated time to complete the mysql command[33]:
- (optional if the pv was not installed) yum install pv for RHEL / CentOS / SL / Fedora Linux
- pv data.sql | mysql -u username -p -h localhost DATA-BASE-NAME [34] and press Enter
- enter password and press Enter
- Import ZIP file to MySql directly:
system operation
show current time
- date (Linux
) output: Thu Oct 25 15:05:10 CST 2012 [37] - date/t (Win
)
output: OS in English: Thu 05/03/2012 OS in Chinese: 2012/05/03 星期四
specify the location where Linux or MS-DOS looks when using a command
- echo $PATH (Linux
)[38] - echo %PATH% (Win
) more on How to setup my system path
reboot the system/server
OS version
Search text of command output
- linux command | grep string (Linux
) ex: keyin yum list installed | grep tar to search the installed package naming tar.[43] - Windows command | find "string" (Win
) ex: netstat -a | find "3306" (note: enclose string in double quotation marks)[44]
help for command
view the documentation for this command
emergency exit
- ctrl+c or ctrl+break (Linux
& Win
) - Pause/Break (Linux
) ex: I pressed the key to leave from the warning message "Vim: Warning: Output is not to a terminal".
references
- ↑ 鳥哥的 Linux 私房菜 -- 學習 bash shell
- ↑ Find command: how to ignore case? - Unix and Linux; Find the case-sensitive file name Under the path / (root folder) ex: find / -name filename ref:Tips For Linux - How to find files in Linux using 'find'
- ↑ How to find a file in MS-DOS.
- ↑ /S 顯示指定目錄及所有子目錄中的檔案。 (引用自 dir /? 命令說明)
- ↑ /Y 不顯示覆寫現存目的檔案的確認提示。 (引用自 copy /? 命令說明)
- ↑ using the www account su - www -c "svn up http://remote.svn.server/path/ /local/path/ --username=your_account --password=xxx"
- ↑ [OPTION]
- -r remove directories and their contents recursively;
- -f ignore nonexistent files, never prompt
- ↑ Linux下使用rsync最快速删除海量文件的方法_果冻的剥壳_新浪博客
- ↑ Linux Rename Files, Folders or Directories
- ↑ MS-DOS ren and rename command help
- ↑ 鳥哥的 Linux 私房菜 -- Linux 的檔案權限與目錄配置
- ↑ [OPTION]
- -l use a long listing format
- -h, --human-readable; with -l, print sizes in human readable format (e.g., 1K 234M 2G) Quoted from linux man ls
- ↑ linux - Making ls output like dir /b /s - Super User
- ↑ Windows equivilent to UNIX pwd - Stack Overflow
- ↑ A Unix Utility You Should Know About: Pipe Viewer - good coders code, great reuse
- ↑ linux - How do you gunzip a file and keep the .gz file? - Super User
- ↑ 鳥哥的 Linux 私房菜 -- Linux 常用網路指令介紹
- ↑ bash: ifconfig: command not found 無法使用ifconfig指令? 先加上 su -l指令
- ↑ Red Hat / CentOS: Check / List Running Services
- ↑ -i means ignore caseHow to use the grep command, by The Linux Information Project (LINFO)
- ↑ Linux / UNIX Find Out What Program / Service is Listening on a Specific TCP Port
- ↑ Netstat
- ↑ Enabling and disabling services during start up in GNU/Linux | All about Linux
- ↑ Check which mpm (multi processing module) apache is running | Binary Tides
- ↑ mysql - How can I monitor the progress of an import of a large .sql file? - Database Administrators Stack Exchange
- ↑ MySQL :: MySQL 5.1 Reference Manual :: 4.5.4 mysqldump — A Database Backup Program
- ↑ Linux / Unix pv Command: Monitor Progress of Data Sent Via a Pipe
- ↑ pv + gzip + mysql — W. Andrew Loe III: Journal
- ↑ (if have permission to LOCK TABLES)mysqldump -h localhost -u username -p DATA_BASE_NAME | pv | gzip -c > database.sql.gz (if have no permission to LOCK TABLES)mysqldump -h localhost -u username -p --lock-tables=false DATA_BASE_NAME | pv | gzip -c > database.sql.gz via mysql - Run MySQLDump without Locking Tables - Stack Overflow
- ↑ MySQL Import/Export Progress Bar - Kevin Warrington
- ↑ pv + gzip + mysql — W. Andrew Loe III: Journal
- ↑ Import MySQL Dumpfile, SQL Datafile Into My Database
- ↑ mysql - How can I monitor the progress of an import of a large .sql file? - Database Administrators Stack Exchange
- ↑ Import MySQL Dumpfile, SQL Datafile Into My Database
- ↑ database - Importing zipped files in Mysql using command line - Stack Overflow
- ↑ Install 7Zip on CentOS 5.5
- ↑ 鳥哥的 Linux 私房菜 -- NTP 時間伺服器
- ↑ 鳥哥的 Linux 私房菜 -- 檔案與目錄管理 -- 關於執行檔路徑的變數: $PATH
- ↑ reboot - Linux Command - Unix Command
- ↑ Windows原來也有內建好用的關機軟體(Shutdown.exe) | ㊣軟體玩家
- ↑ The Will Will Web | 如何查詢 Linux 的種類與版本 ( Linux Standard Base )
- ↑ Find windows OS version from command line
- ↑ Unix/Linux grep command examples | grep command in Unix and Linux | grep examples | alvinalexander.com
- ↑ Microsoft Windows XP - Find
further reading
- ÆtherDev - Windows | Linux Equivalent Commands[Last visited: 2012-09-07]