• 1. 青い夜の記憶 - 须藤ひとみ
  • 2. 念夏 - 马天宇
  • 3. 偏爱 - 张芸京
  • 4. エンド・タイトル-东京爱情故事
  • 5. 夜色 - 玉置浩二
  • 6. オセンチな歩美 - 大野克夫
  • 7. The_Godfather_Waltz/Speak_Softly_Medley - Jack_Jezzro
  • 8. 猫になりたい - スピッツ
  • 9. Love_Theme_from_Cinema_Paradiso - Jeff_Steinberg
  • 10. 時には昔の話を - 加藤登紀子
person

记录一下平时使用Linux和Mac的时候,常用的命令。

Ubuntu: Ubuntu中文 Wiki (英语渣专用)

文件和目录

查找并删除

find / -name "*.mp3" |xargs rm -rf

排除式删除

rm `ls *.txt|egrep -v '(cc.txt|bb.txt|aa.txt)'`

文件的大小

df    #查看一级文件夹大小、使用比例、档案系统及其挂入点
du -sh    #查看当前文件夹大小
du -sh * | sort -n    #统计当前文件夹(目录)大小,并按文件大小排序
du -sk filename    #查看指定文件大小

可能会用到的参数

-k -m -g #指定显示单位 kb、Mb、GB

压缩和解压

tar

-c: 建立压缩文档

-x:解压

-t:查看内容

-r:向压缩文档文件末尾添加内容

-u:更新原来压缩包的内容

$ tar -cvf b.tar tdir

# 只打包,不压缩。

$ tar -zcvf b.tar.gz tdir

-z:以gzip压缩。

-j:bz2压缩。

-J:xz属性

-v:显示所有过程

-o:文件解开到标准输出

-f:档案名字

解压

tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2   //解压 tar.bz2
tar –xZvf file.tar.Z   //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip
(1) *.tar 用 tar –xvf 解压
  (2) *.gz 用 gzip -d或者gunzip 解压
  (3) *.tar.gz和*.tgz 用 tar –xzf 解压
  (4) *.bz2 用 bzip2 -d或者用bunzip2 解压
  (5) *.tar.bz2用tar –xjf 解压
  (6) *.Z 用 uncompress 解压
  (7) *.tar.Z 用tar –xZf 解压
  (8) *.rar 用 unrar e解压
  (9) *.zip 用 unzip 解压
  (10) *.xz 用 xz -d 解压
  (11) *.tar.xz 用 tar -zJf 解压

线程和端口

端口

  1. lsof -i:端口号 用于查看某一端口的占用情况,比如查看8000端口使用情况,lsof -i:8000
  2. netstat -tunlp |grep 端口号

配置文件

JAVA_HOME

export JAVA_HOME=/usr/local/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH  

alias

# mac's zshrc
alias gitcm='git commit -m'
alias gitma='git push origin master'
alias a='cd /Volumes/a'
alias blog='cd /Volumes/a/blog/'
alias data1='cd /Volumes/data1/'
alias data2='cd /Volumes/data2/'
alias dl='cd ~/Downloads'
alias dt='cd ~/Desktop'

alias etc='cd /etc/'
alias usrl='cd /usr/local'
alias doc='cd /Library/WebServer/Documents/'

alias apre='sudo apachectl restart'
alias apstart='sudo apachectl start'
alias apstop='sudo apachectl stop'

应用安装配置

zsh

  1. 安装zsh

设置默认

chsh -s /bin/zsh
  1. 安装oh-my-zsh

    git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
    
  2. 拷贝配置文件

    cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
    
  3. .zshrc中修改我要的主题

    ZSH_THEME="agnoster"
    
  4. 下载不会乱码的字体

下载链接

安装之后再配置中修改字体即可。

sublime

—– BEGIN LICENSE —–  
TwitterInc  
200 User License  
EA7E-890007  
1D77F72E 390CDD93 4DCBA022 FAF60790  
61AA12C0 A37081C5 D0316412 4584D136  
94D7F7D4 95BC8C1C 527DA828 560BB037  
D1EDDD8C AE7B379F 50C9D69D B35179EF  
2FE898C4 8E4277A8 555CE714 E1FB0E43  
D5D52613 C3D12E98 BC49967F 7652EED2  
9D2D2E61 67610860 6D338B72 5CF95C69  
E36B85CC 84991F19 7575D828 470A92AB  
—— END LICENSE ——  

添加hosts

0.0.0.0 license.sublimehq.com
0.0.0.0 45.55.255.55
0.0.0.0 45.55.41.223

preferences

"update_check":false, 
"open_files_in_new_window":false,

数据库问题

MySQL无法启动

可能是拥有者发生了变化:

sudo chown -R mysql /usr/local/mysql/data

Mysql无法远程登录

  • 修改mysql的配置文件/etc/mysql/my.confUbuntu下是/etc/mysql/mysql.conf.d/mysqld.cnf),
    bind-address后面增加远程访问IP地址或者禁掉
  • 你想root使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
  • 如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 
'mypassword' WITH GRANT OPTION; 

Mysql备份

#!/bin/bash    
   
#将要备份的数据库    
database_name=mxonline  
  
if [ -n "$1" ];then  
    database_name=$1  
    echo $database_name  
fi  
  
#保存备份个数    
number=3    
#备份保存路径    
backup_dir=/Volumes/a/databases_dump  
#日期    
dd=`date +%Y%m%d%M%S`    
#备份工具    
tool=mysqldump    
#用户名    
username=root    
#密码    
password=root    

#简单写法  mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.dump    
$tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql    
    
#写创建备份日志    
echo "create $backup_dir/$database_name-$dd.sql" >> $backup_dir/log.txt    
    
#找出需要删除的备份    
delfile=`ls -l -crt  $backup_dir/$database_name-*.sql | awk '{print $9 }' | head -1`    
    
#判断现在的备份数量是否大于$number    
count=`ls -l -crt  $backup_dir/$database_name-*.sql | awk '{print $9 }' | wc -l`    
    
if [ $count -gt $number ]    
then    
  rm $delfile  #删除最早生成的备份,只保留number数量的备份    
  #写删除文件日志    
  echo "delete $delfile" >> $backup_dir/log.txt    
fi    

添加定时任务执行即可。

服务器

Nginx

伪静态:try_files最后一项改成 /index.php$request_uri(Typecho)。

https申请:https://certbot.eff.org/

www的重定向:

// 方法1:
// nginx 官方说明:This is a wrong, cumbersome, and ineffective way(这是一种错误,麻烦,无效的方式!)
server {
    listen       80;
    server_name  www.example.org  example.org;
    if ($http_host = example.org) {
        rewrite  (.*)  http://www.example.org$1;
    }
    ...
}

// 方法2:
// nginx 官方推荐
server {
    listen       80;
    server_name  example.org;
    return       301 http://www.example.org$request_uri;
}
 
server {
    listen       80;
    server_name  www.example.org;
    ...
}

网络和网站

下载整个网站

wget -c -r -np -k -L -p http://xxx.com

其他

立即关机

$ halt

定时任务

  crontab -e建立 -l列出 -r删除

第1个星号表示分钟(0-59)

第2个星号表示小时(0-23)

第3个星号表示日期(0-31)

第4个星号表示月份(0-12)

第5个星号表示星期几(0-6,0是周日,6是周六)

第6个星号表示要执行的脚本文件名。

0 13 * 表示每天下午13点执行

30 表示每30分钟执行

新评论