linux系统常用命令

Created

写在前面:只列举后端开发使用频率较高的简单命令,多了也记不住。。。
1.查看当前用户,退出登陆
whoami //查看自己的名字
who //查看当前使用linux的所有用户
exit //退出登陆

2.查看文件目录,切换目录
pwd //查看当前所在目录位置
cd /usr/local/ //切换目录
cd - //进入上一次工作路径
ls //列出目录所有文件名,不包括隐藏文件,
ls -a //列出目录所有文件,包含以.开始的隐藏文件
ls -l //除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
ls -l k* //列出以k开头的文件的详细信息

3.创建目录,创建文件
mkdir common //在当前目录下创建common目录
cat > test.txt //创建文件test.txt并通过命令行输入,按ctrl+z停止输入
vim test.txt //创建文件test.txt并通过vim编辑器输入

4.查找文件
find ./ -name ‘*.log’ //在当前文件目录下查找以.log结尾的文件

5.改变文件权限
chmod 751 filename [-R] //不带-R 只改变当前文件的权限owner:rwx(7),group:rx(5),other:x(1)
//带-R参数表示递归改变当前目录及其子目录所有文件的权限

6.查看文本文件cat,vim,head,tail
cat只能在命令行里打印出来,不能修改文件内容
vim既可查看又可修改
head查看头部部分,tail查看尾部部分
用法:
vim filename //打开并编辑文件
cat filename //查看文件
head [-n num] filename //不带 [-n num],默认显示文件的开头10行,[-n 20]表示显示开头20行
tail [-n num] filename //不带 [-n num],默认显示文件的末尾10行,[-n 20]表示显示结尾20行
tail -f filename // 循环读取(常用于查看递增的日志文件),动态显示文件的更新
7.mv命令
mv file1 file2 //把file1重命名为file2
mv file1 file2 file3 /home/ //把file1,2,3都移动到home目录下
mv * ../ //将当前目录下所有文件移动到上一级目录下

8.删除命令
rm -i *.log //删除任何.log文件;删除前逐一询问确认
rm -rf test //递归删除test目录及其子目录,并且不用确认

9.复制文件
cp [-r/i] a.txt /test/ //复制a.txt到test目录下,-r复制目录及其子项,-i有同名文件时是否提示。

10.vim编辑器常用命令
首先要分清vim运行时所处的模式。
1)普通模式:用的编辑器命令,比如移动光标,删除文本等等。这也是Vim启动后的默认模式。
2)插入模式:在这个模式中,大多数按键都会向文本缓冲中插入文本。普通模式按i进入插入模式,插入模式按Esc进入普通模式。
3)命令行模式:在命令行模式中可以输入会被解释成并执行的文本。普通模式按:进入命令行模式。命令行模式输入wq保存并退出。
4)可视模式:这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。普通模式按v进行可视模式。

普通模式下:
1) i在当前光标处进行编辑
2) I在行首插入
3) A在行末插入
4) a在光标后插入编辑
以上四个字母都会进入插入模式。
普通模式下的快速删除:
5) x或者Delete删除游标所在的字符
6) dw删除一个单词(不适用中文)
7) dd删除整行(2dd执行2次删除整行)
8)d$或D从当前光标位置删除至行尾
9) d^从当前位置删除至行首
10)dj删除当前行以及下一行,dk删除当前行以及上一行
普通模式下的查找:
11) 输入/word,按下回车,从当前位置往下搜索,将光标定位到第一个匹配的word处,按n查看下一个匹配,按N查看上一个匹配
12)输入?word,按下回车,从当前位置往上搜索,将光标定位到第一个匹配的word处,按n查看下一个匹配,按N查看上一个匹配
以上/或者?都支持模糊搜索,比如/interest
13)在普通模式下,按Shift +
快速选中光标所在的单词,并开始查找下一个该单词。按n查看下一个匹配,按N查看上一个匹配

可视模式下:通过键盘的方向键上下左右选中一块高亮的区域。
1) d 剪切操作
2)y复制操作
3)p粘贴操作
Visual Line模式 按键V可以进入,使用上下方向键选中整行进行操作。

11.压缩和解压
tar -cvf log.tar 1.log,2.log //将1.log,2.log打包,命名为log.tar
tar -zcvf /tmp/etc.tar.gz /etc //将etc文件夹使用gz压缩,放到temp/目录下命名为etc.tar.gz
tar -zxvf aaa.tar.gz //解压,显示解压过程

12.进程相关
查找进程:
ps -aux |grep java //以BSD的格式来显示 java有关的进程
ps -ef |grep java //用标准的格式显示java这个进程
kill -9 PID //-9 表示强迫进程号为pid的进程立即停止
killall -9 NAME // 表示强迫进程名为NAME的进程立即停止
通常用 ps 查看进程 PID ,用 kill 命令终止进程

php基础--面试基础题

Created

PHP中几个输出函数echo,print(),print_r(),sprintf(),var_dump()的区别
1:echo:是语句不是函数,没有返回值,可输出多个变量值,不需要圆括号。不能输出数组和对象,只能打印简单类型(如int,string)。

2:print:是语句不是函数,有返回值 1 ,只能输出一个变量,不需要圆括号。不能输出数组和对象,只能打印简单类型(如int,string)。

3:print_r:是函数,可以打印复合类型,例如:stirng、int、float、array、object等,输出array时会用结构表示,而且可以通过print_r($str,true)来使print_r不输出而返回print_r处理后的值

4:printf:是函数,把文字格式化以后输出(参看C语言)

5:sprintf:是函数,跟printf相似,但不打印,而是返回格式化后的文字(该函数把格式化的字符串写入一个变量中,而不是输出来),其他的与printf一样。

6:var_dump():函数,输出变量的内容、类型或字符串的内容、类型、长度。常用来调试,无返回值。可打印多个变量。

7.var_export() :函数。可打印也可不打印。当第二个参数设置为true时不打印,而是返回格式化后的文字。可以像var_dump()一样判断变量的内容、类型、长度。与var_dump()不同的是其返回的表示,是合法的 PHP 代码,可以直接赋值给变量。例如:

1
2
3
4
5
6
<?php

$arr = array ( 1 , 2 , array ( "apple" , "banana" , "orange" ));
var_export ( $arr );

?>

程序输出:

array (
  0 => 1,
  1 => 2,
  2 =>array (
    0 => 'apple',
    1 => 'banana',
    2 => 'orange',
  ),
)

注意,上面的输出是合法的PHP代码。假如用var_dump(),则输出为:

array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  array(3) {
    [0]=>
    string(5) "apple"
    [1]=>
    string(6) "banana"
    [2]=>
    string(6) "orange"
  }

}

但是经过var_export()赋值后的变量却已经变为string类型,如果是数组,就不能再用键值对的形式去访问数组元素了。例如:

1
2
3
4
5
6
7
<?php
$arr = array ( 1 , 2 , array ( "apple" , "banana" , "orange" ));
$s = var_export ( $arr,true );
var_dump($s);
echo "<br/>";
echo $s[0];
?>

输出:
string(108) “array ( 0 => 1, 1 => 2, 2 => array ( 0 => ‘apple’, 1 => ‘banana’, 2 => ‘orange’, ), )”
a

Hello World

Created

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

Run server

1
$ hexo server

More info: Server

Generate static files

1
$ hexo generate

More info: Generating

Deploy to remote sites

1
$ hexo deploy

More info: Deployment

e2dw/","tagMode":false});