用filezilla连接一虚拟主机的ftp
响应: 421 Sorry, cleartext sessions are not accepted on this server.
错误: 无法连接到服务器
这个是服务器要求加密方式的,选择“要求显式的 FTP over TLS”
如图:
1. tail -n 1 filename
2. tail -1 filename
3. sed -n '$p' filename
4. awk 'END {print}' filename
如果想显示文本的某一行,比如说第五行:
awk '{ if(NR==5)print}' filename
在shell中用变量LineNo代替行号,注意单双引号
awk "{ if(NR==$LineNo)print}" filename
5.如果要动态的显示最后一行
tailf -1 filename
或几行
tail -f filename
使用mysqldump备份时,–opt表示采用优化(Optimize)方式
mysqldump --opt -uroot -ppasswd c14sql >c14sql.sql
出现错误
mysqldump: Got error: 145: Table './c14sql/is_stats' is marked as crashed and should be repaired when using LOCK TABLES
解决办法1,用myisamchk
myisamchk -c -r /var/lib/mysql/c14sql/is_stats.MYI
解决办法2,进入mysql>(暂未测试)
mysql> repair table is_stats;
检测一下
mysql> check tables is_stats;
没问题的话再备份就没有问题了
ps:
mysqldump 导出表结构 –no-data flag to make it only export structure
mysqldump -u jira -p -h 192.168.9.11 jira6 --no-data > jira6.nodata.sql
常用命令:
-c 创建包
-x 解包
-t 列出包中的内容
-r 增加文件到指定包中
-u 更新包中的文件
可选命令:
-j 使用bzip2
-z 使用gzip
-Z 使用compress
-f 后面跟包的文件名
-v 显示执行过程
-C 指定解包后的路径
例一:tar打包文件(并用gzip压缩)
tar vczf a.tar.gz hello
例二:tar不解压 查看目录结构
tar tvf a.tar.gz | grep ^d
例三:除了/var/www/clients这个文件夹,打包/var/www中的所有文件和文件夹
tar vczf www.tar.gz /var/www/ --exclude=clients
如果要排除多个可以一直加
--exclude dir1 --exclude a.log --exclude *.jpg
例四:解压tar.bz2文件
首先: bzip2 -d mono-2.10.tar.bz2 执行完发现只有一个mono-2.10.tar 现在再执行 tar -xvf mono-2.10.tar 就得到了mono-2.10文件夹
或直接使用
tar jxf mono-2.10.tar.bz2
例五:将多个文件夹打包
tar -czf abc.tar.gz /home/a /home/b /home/c
例六:分卷压缩及合并,Linux下备份网站数据,由于目录abc打包成一个文件会比较大,所以想分卷压缩成每个100M的文件,方便下载。
分卷压缩,使用tar+split组合,进入目录上级目录,执行: tar cvzf - abc | split -b 100m 会产生以x开头的文件,然后把x开头的文件传输到目标地 合并 cat x* > abc.tar.gz 解压 tar xvzf abc.tar.gz
例七:解压tar文件
file命令查看结果是POSIX tar archive格式,使用命令
tar xvf xxx.tar
例八:使用tar打包时不使用绝对路径
如:tar vczf jpuyy.tar.gz /home/jpuyy/
会提示”tar: Removing leading `/’ from member names”,解压时会在当前目录解压成home/jpuyy。如果想要解压到/home/jpuyy,则使用-C /指令,即
tar vxzf jpuyy.tar.gz -C /
例九:提取tar.gz中的指定一个文件,先找到这个文件
tar tvf redis-2.6.14.tar.gz | grep redis_init_script -rwxrwxr-x root/root 1098 2013-06-20 16:36 redis-2.6.14/utils/redis_init_script
然后执行
tar xzf redis-2.6.14.tar.gz redis-2.6.14/utils/redis_init_script
得到想要指定文件。
例九:只将目录内部的文件打包,不包括顶层目录
tar czf workspace.tar.gz -C /path/to/workspace .
参考:http://xiaobin.net/200911/tar-removing-leading-slash-from-member-name/
题外话
使用gzip压缩
gzip jpuyy-backup-20121212.sql
使用gzip解压
gzip -d jpuyy-backup-20121212.sql.gz
cut用来截取字符串
例一:
以’>’为分段,截取第2段
如ls -l我的配置文件得到它的真实路径,看到输出的可以以’>’分隔
jpuyy@www:~$ ls -l jpuyy.com.conf lrwxrwxrwx 1 root root 52 2012-03-08 18:03 jpuyy.com.conf ->../sites-available/jpuyy.com.conf
则执行(-d代表分隔符,可任意发挥,默认TAB;-f代表是第几段,后面可跟子参数N,N-,N-M,-M)
jpuyy@www:~$ ls -l jpuyy.com.conf | cut -d'>' -f 2 ../sites-available/jpuyy.com.conf
例二:取得文件中每行中特定的几个字符
截取m-n之间字符,语法:
cut -c m-n filename
-c后面可跟子参数有N,N-,N-M,-M
例子:
cut -c 3-5 /etc/passwd
du–用来计算文件占用空间的命令
例1:显示当前目录下的各文件夹大小(并不显示单个文件的大小),最后一行显示的是当前目录的总大小
du -h --max-depth=1 4.0K ./hob 232M ./chan 4.0K ./1d4 291M ./ngjewel 4.0K ./gzjul 4.0K ./lifi 728M .
例2:显示 work/testing下的目录大小
# du -h --max-depth=1 work/testing 27M work/testing/logs 35M work/testing
显示 work/testing/下面所有文件和目录大小
du -h --max-depth=1 work/testing/* 8.0K work/testing/func.php 27M work/testing/logs 8.1M work/testing/nohup.out
例3:遍历显示子目录及子文件的大小
du -ha