Linux常用命令

查看CentOS系统版本

uname -a

查看Linux内核版本

uname -r

安装git 提示Require libcurl.so.3错误

yum install git --disablerepo=rpmforge

安装crond计划任务

yum install  vixie-cron crontabs -y

安装php posix系列函数

yum -y install php-process

安装 sz rz 上传下载工具

yum install lrzsz

释放内存

sync && echo 1 > /proc/sys/vm/drop_caches # to free pagecache
sync && echo 2 > /proc/sys/vm/drop_caches # to free dentries and inodes
sync && echo 3 > /proc/sys/vm/drop_caches # to free pagecache, dentries and inodes

安装 phpize

yum install php-devel

crontab计划任务

crontab -e
每10秒 *:10 * * * * cmd
每1分钟 */1 * * * * cmd

mysql赋权限

grant all privileges on `dbname`.* to 'user'@'localhost' identified by 'password';
FLUSH PRIVILEGES;

mysql导入导出

导出一个库
mysqldump -uroot -p1234 dbname > file.sql
导出一个表
mysqldump -uroot -p1234 数据库名 表名 > /root/tb.sql

导出一个数据库结构
mysqldump -uroot -p1234 -d --add-drop-table 数据库名 > /root/struct.sql
-d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table

 crontab自动备份mysql脚本

# /bin/bash
DB_NAME="***"
DB_USER="***"
DB_PASS="***"
BIN_DIR="/usr/local/mysql/bin"
BACK_DIR="/data/backup"
DATE="$DB_NAME-`date +'%Y%m%d-%H:%M:%S'`"
LogFile="$BACK_DIR"/dbbakup.log
DeleteFile="$BACK_DIR"/deleted.txt
BackNewFile=$DATE.sql

 
  

$BIN_DIR/mysqldump --opt --force -u$DB_USER -p$DB_PASS $DB_NAME > $BACK_DIR/$DATE.sql

echo -----------------------"$(date +"%y-%m-%d %H:%M:%S")"----------------------- >> $LogFile

echo createFile:"$BackNewFile" >> $LogFile

#删除7天前的备份文件

find "$BACK_DIR" -ctime +7 -type f -name "*.sql" -print > $DeleteFile

 
  

echo -e "delete files:" >> $LogFile

 
  

#循环删除匹配到的文件
cat $DeleteFile | while read LINE
do
rm -rf $LINE
echo $LINE >> $LogFile
done

 
  


echo "---------------------------------------------------------------" >> $LogFile

 

还原一个mysql库

方法一
mysql -u root -p dbname < file.sql
密码 方法二 mysql
-u root -p 密码 use dbname; source /root/file.sql

mysql查看所有表状态

show table status from dbname;

查看单个表

show create table db_name.table_name

更改mysql表的存储引擎

alter table table_name engine = innodb;

硬盘空间 

du -sh ./* | sort
查看当前目录下的子文件夹空间占用情况
-s 仅显示总计
-h 以k、m、g为单位

df -ah
查看硬盘文件系统空间占用情况
-a 显示所有文件系统
-h 以k、m、g为单位

 CentOS注销其他登录

w 列出在线登录的用户

pkill注销其他用户的登录

pkill -kill -t pts/1

Shell不显示任何信息

shell中可能经常能看到:>/dev/null 2>&1

命令的结果可以通过%>的形式来定义输出

/dev/null 代表空设备文件
> 代表重定向到哪里,例如:echo "123" > /home/123.txt
1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr标准错误
& 表示等同于的意思,2>&1,表示2的输出重定向等同于1

那么本文标题的语句:
1>/dev/null 首先表示标准输出重定向到空设备文件,也就是不输出任何信息到终端,说白了就是不显示任何信息。
2>&1 接着,标准错误输出重定向等同于 标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。

 

mysql复制数据

 insert into tttt(title,image,lang) select title,image,'fr' as lang from tttt where lang='en';

 

Mac OS安装PECL

cd /usr/lib/php 
sudo php install-pear-nozlib.phar

Edit:

/etc/php.ini and find the line: ; 
include_path = ".:/php/includes" 
修改为: 
include_path = ".:/usr/lib/php/pear" 
sudo pear channel-update pear.php.net 
sudo pecl channel-update pecl.php.net 
sudo pear upgrade-all

 

你可能感兴趣的:(Linux常用命令)