unix命令与启动mongodb

96
anshi
2017.06.15 11:30* 字数 847

1.查看目录以及权限

$ ls查看当前文件目录
$ ls -l查看当前目录下文件权限(如下图)

image.png

图中第一列:首字母d意为目录(dirtectory),首字为-意为文件。首字母后九位,代表不同用户的权限。
第一个三位,是对所有者(owner)而言的权限,rwx分别是read/write/execute 读写执行,-代表用户没有该权限,比如r--则代表对用户具有只读权限。
第二个三位,是对当前用户组(group)而言的权限。
第三个三位,是对其他人(other)而言的权限。。
每个三位又可以认为是一个二进制的三位数。
例如:
rwx => 111 >也就是十进制的7
r-- =>100 >也就是十进制的4
所以,如果我们想要更改某个文件的权限可以使用命令
chmod 777 <path here>
例如:
chmod 777 a
执行完后

image.png

图中的a文件的权限则被更改了。

第二栏表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了(Q:数了不对,包括隐藏的?)。
第三栏,表示该文件或目录的所有者。
第四栏则表示当前用户所在用户组。
第五栏表示文件大小。
第六栏表示修改时间。
第七栏表示文件名。

关于第二栏的疑问,确实包括隐藏的..不过想想也是... 那么关于查看隐藏文件,只需在命令上加一栏 -a 也就是all的意思。
例如:

image.png

由于mac是默认隐藏以.为开头的文件的,(所以第一次使用这个命令的时候十分惊讶)。

2.自定义命令

可以看到,这些隐藏文件中,还有一个叫.profile的文件。现在我们来说说他(话说这个是不是我后来自己建立的,可能默认是没有的???)。

image.png

输入 ls -l命令 或许会让你觉得有些麻烦,就好比 npm下载依赖的时候经常会带上 --save-dev (最近好像默认自带这两个配置了?),其实我们可以对命令进行自定义,类似package.json里的script这种模式吧。
输入命令
vim .profile代表进入profile的编辑模式。(vim你应该听过吧)

image.png

刚才说道profile这个文件可能默认是没有的,没关系我们新建一个文件。
touch .profile //文件新建好了
vim .profile //进入文件编辑模式,如图,当然这是我编辑过的,如果新建自然就是空白一片吧。
!!注意,vim里快捷键很多,随意按键操作都可能有你意想不到的结果。你只要记住,
1.按 字母i键 进入编辑模式
2.编辑按esc退出
3.shift+;键(其实就是:)进入退出模式,输入wq,回车,即可保存退出。

image.png

alias也就是别名,在该栏下我定义了三个别名。当然你也可以,不过这个别名是在当前用户下的bash作用的,注意和其他的命令产生冲突。
#path其实是我再用mongodb的时候,每次启动,都要执行一段
export PATH=<mongod path>/bin:$PATH,所以我就干脆写到整个bash环境里了。
这也是我临时学起命令行的原因了...

3.启动mongodb(以下内容都没有新增的命令了)

我按照官网的启动教程.
mkdir -p /data/db 新建文件夹 注意是在根目录下新建的,并不是当前, -p表示-parents,因为我们是要建立两个目录的,加上这个命令代表能将最终目录的父级目录也跟着建立。
mongod 启动mongodb ,好的失败了...其实在这之前,你应该先看到
read-only directory: /data/db 这样的错误,这个错误可以依据我如上的命令行解决..

image.png

然后是 Is a mongod instance already running?的错误,虽然不知道为什么会发生这样的错误,但是我经常遇到...
ps ax | grep mongod 查看当前正在运行的mongod程序...(?)

image.png

删除进程它
kill -9 4109
再次执行查看,..大概就没有了

最后再mongod ok,大功告成。

前端