Tag: Shell Script

sort 指令 – 将字段资料排序

sort 指令是在 Linux 下的排序指令, 可以将资料以不同字段以数值及字母排序。sort 默认会用以下条件排序: — 数字会排在字母前面; — 小写字母会排在大写字母前面; 以一个简单的例子说明使用方法, 例如用 “ls -l” 列出档案清单, ls 默认是用档案名称排序, 想要用档案大小排序, 可以这样: $ ls -l | sort -n -k 5 上面的 “5” …

cut 指令: 撷取档案每行指定范围资料

cut 指令可以将档案内每行资料, 选择性地撷取指定的部份, 对于 Log 分析或过滤资料十分好用, 当然除了支援撷取档案资料外, 也可以用管线 (pipe) 汇入资料, 以下教会是关于 cut 指令的用法。 cut 指令的语法: cut … … cut 指令主要有以下参数可以: -b: 输出指定的范围, 以 bytes 作为单位. -c: 输出指定的范围, 以字符数量作为单位. -d: …

sed 搜寻并删除整行资料

在 Linux 下如果需要将档案内指定某一行资料删除,可以用 sed 指令达成,以下教学会介绍在 Linux 下用 sed 指令,删除档案内指定的整行资料。 删除指定行数 当知道要删除的资料在档案那一行,或者在某一个行数范围时,可以直接指定删除的行数,例如: 删除档案 filename.txt 的第 10 行: 删除档案 filename.txt 的第 10 至 15 行: 将包含有 “delete_str” 字串的一整行资料删除: 将包含有 “delete_str” 字串的一整行资料删除: …

把 crontab 执行指令输出写入记录档

一般上在 crontab 自动执行的指令, 会将所有指令标准输出及错误放到 /dev/null, 这便会略过所有指令的输出, 例如用 crontab 执行 /root/my-script.sh, 一般上语法是这样写: * * * * * /root/my-script.sh > /dev/null 但有时需要将执行指令的输出储存下来, 只要将 /dev/null 换成记录档的位置即可, 例如想把指令的输出放到 /var/log/mycrontab.log, 可以这样写: * * * …

nohup 指令 – 背景执行指令

当执行 Linux 指令时, 会在终端机一直执行, 直到指令完成后才会结束, 并给使用者重新输入指令。而 nohup 指令就可以让指令在背景执行, 不会影响使用者的正常工作。例如要将一些体积较大的档案 rsync 到远端服务器, 用 nohup 指令便可以一边 rsync 一边完成手边的工作。 有关 nohup nohup 的全写是 “no hangup”, HUP hangup (HUP) 讯号会在使用者登出时, 系统向 process 发出, …

wget 将 FTP 服务器制作镜像备份

wget 是 Linux 下十分流行的下载工具, 可以下载 HTTP, HTTPS 及 FTP 的档案。 除了下载档案外, wget 也可以对 FTP 服务器的内容制作镜像备份, 即是下次执行时, 只会下载 FTP 服务器内变更了的内容, 并制作一个跟 FTP 服务器相同内容的镜像, 如同 rsync 一样, 以下是具体语法: 例如以下是登入 FTP 服务器的资料: …

加密 Shell Script 原始码

Shell Script 的好处是简单方便, 可以直接将 Linux 指令放到 Shell Script, 但 Shell Script 其中一个问题是, 如果 Shell Script 里面有一些敏感的信息, 例如密码, 里面的内容可以被其他使用者看到。shc 是一支将 Shell Script 用 RC4 加密, 并制作成 binary 档的工具, 本篇文章会示范用 shc …

Linux 日期格式 – Shell Script 自订格式

Linux 的 date 指令可以输出目前的日期及时间, 例如直接输入 date 指令, 会输出很详细的日期及时间: $ date Fri Mar 10 09:15:51 HKT 2017 而 date 指令除了默认的格式外, 也可以自订日期格式, 语法是 date +”FORMAT”, 例如我想显示 DD-MM-YYYY 格式的日期, 可以这样做: 这样自订日期时间格式在 Shell …

MySQL 管理相关指令

以下是一些常用的 MySQL 管理相关指令汇整, 以下的指令如果以 # 字符开头, 代表是在 CLI 输入的指令, 如果是以 “mysql>” 开始, 则表示登入 MySQL 后输入的指令。 登入 MySQL: 建立数据库: 汇入数据库: (将 /path/to/backup.sql 汇入到 database_name 数据库) 汇出数据库: (将 database_name 数据库汇出到 /path/to/backup.sql) …

MySQL 修改使用者密码

修改 MySQL 密码可以透过 mysql 指令 (在 Windows 下是 mysql.exe),mysqladmin 指令或 phpMyAdmin 完成,以下是用 mysql 及 mysqladmin 修改 MySQL 使用者密码的方法。 mysql 指令 在指令模式用 root 帐号透过 mysql 登入 MySQL 服务器: # mysql …