用Linux命令行生成随机密码的十种方法
用Linux命令行生成随机密码的十种方法1、这种方法使用SHA算法来加密日期,并输出结果的前32个字符:
date +%s | sha256sum | base64 | head -c 32 ; echo
2、这种方法使用内嵌的/dev/urandom,并过滤掉那些日常不怎么使用的字符。这里也只输出结果的前32个字符:
< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
3、 这种方法使用openssl的随机函数。如果你的系统也许没有安装openssl,你可以尝试其它九种方法或自己安装openssl。
openssl rand -base64 32
4、 这种方法类似于之前的urandom,但它是反向工作的。Bash的功能是非常强大的!
shell 随机从文件中抽取若干行的实现方法
方法一
通过shuf命令:
- shuf 命令的选项:
- -e, --echo :将每个参数视为输入行
- -i, --input-range=LO-HI :将LO 到HI 的每个数字视为输入行
- -n, --head-count=行数 : 最多输出指定的行数
- -o, --output=文件 :将结果输出到指定文件而非标准输出
- --random-source=文件 :从指定文件获得随机比特
- -z, --zero-terminated :以0 结束行而非新行
- --help :显示此帮助信息并退出
- --version :显示版本信息并退出
高性能网站架构之负载均衡 Nginx的简介
什么是Nginx
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新浪、网易、腾讯等。
linux 符号链接与硬链接的区别
linux下我们可以把符号链接,也就是软连接 当做是 windows
硬链接 就好像是 又复制了一份
ln 1.txt 2.txt 这是硬链接,相当于复制,不可以跨分区,但修改1.txt,2.txt会跟着变,若删除1.txt,2.txt不受任何影响。
ln -s 3.txt 4.txt 这是软连接,相当于快捷方式。修改4.txt,3.txt
linux sed
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等使用sed awk bash提取行的范围
使用sed awk bash提取行的范围
以下是根据行号打印或提取文件部分的几种不同方式。
方式一使用sed把文件中指定行的内容重定向到/tmp/file1中
sed -n ’27,99p’ file.txt > /tmp/file1
等同于
sed '27,99 !d' file.txt > /tmp/file2
方式二使用awk NR
awk 'NR >= 27 && NR <= 99' file.txt > /tmp/file3
方式三使用head和tail
head -99 file.txt | tail -73 > /tmp/file4
vim 编辑远程文件
vim 编辑远程文件
unstableme.log 是一个存放在172.21.20.104服务器/root目录下的一个文件. 通过从本地的编辑该文件的命令是:
vim scp://root@172.21.20.104//root/unstableme.log
这个时候会提示你输入172.21.20.104服务的密码
(转)http://www.unixcl.com/2008/08/edit-remote-file-using-vi-and-scp-linux.html
Php 安全设置
1) 打开 php 的安全模式php 的安全模式是个非常重要的内嵌的安全机制,能够控制一些 php 中的函数,比如 system(),
同时把很多文件操作函数进行了权限控制,也不允许对某些关键文件的文件,比如/etc/passwd,
但是默认的 php.ini 是没有打开安全模式的,我们把它打开:
safe_mode = on
2) 用户组安全
当 safe_mode 打开时,safe_mode_gid 被关闭,那么 php 脚本能够对文件进行访问,而且相同
组的用户也能够对文件进行访问。
建议设置为:
safe_mode_gid = off
如果不进行设置,可能我们无法对我们服务器网站目录下的文件进行操作了,比如我们需要
对文件进行操作的时候。
3) 安全模式下执行程序主目录
如果安全模式打开了,但是却是要执行某些程序的时候,可以指定要执行程序的主目录:
safe_mode_exec_dir = /usr/bin
一般情况下是不需要执行什么程序的,所以推荐不要执行系统程序目录,可以指向一个目录,
然后把需要执行的程序拷贝过去,比如:
safe_mode_exec_dir = /tmp/cmd
但是,我更推荐不要执行任何程序,那么就可以指向我们网页目录:
safe_mode_exec_dir = /usr/www
4) 安全模式下包含文件
如果要在安全模式下包含某些公共文件,那么就修改一下选项:
safe_mode_include_dir = /usr/www/include/
vim 打开文件并跳动指定的行数
vim 打开文件并跳动指定的行数
有时我们需要在vim中打开一个文件,然后需要去一个特定的行号,以便检查某些东西或编辑某些东西。 这就是我们如何在vim中打开一个文件,并直接把光标放在我们感兴趣的所需行上。
方法-
使用vim -c 参数
From VIM(1) man page:
-c {command}
{command} will be executed after the first file has been read. {command} is interpreted as an
Ex command. If the {command} contains spaces it must be enclosed in double quotes (this
depends on the shell that is used). Example: Vim "+set si" main.c
linux shell 将多行文件转换为一行
说实话,虽然对shell编程包括awk有所了解,但是对sed的多行与一行的处理还是不甚理解,在网上搜罗了一篇文章觉得还不错,记录一下:今天一个工程师问我,怎么将一个文件中的多行转换成一行。
我给出了如下三种方法:
1. 采用awk
awk BEGIN{RS=EOF}'{gsub(/\n/," ");print}' file
说明:awk默认将记录分隔符(record separator即RS)设置为\n,此行代码将RS设置为EOF(文件结束),也就是把文件视为一个记录,然后通过gsub函数将\n替换成空格,最后输出。
2. 采用sed
sed ':a ; N;s/\n/ / ; t a ; ' file
说明:sed默认只按行处理,N可以让其读入下一行,再对\n进行替换,这样就可以将两行并做一行。但是怎么将所有行并作一行呢?可以采用sed的跳转功能。:a 在代码开始处设置一个标记a,在代码执行到结尾处时利用跳转命令t a重新跳转到标号a处,重新执行代码,这样就可以递归的将所有行合并成一行。
热门日志
分类
- Django(4)
- ssdb(1)
- Mac(7)
- C(1)
- memcache(1)
- Python(32)
- Vim(8)
- sed(2)
- ansible(3)
- awk(4)
- shell(3)
- about(1)
- git(9)
- bat(4)
- svn(0)
- docker(1)
- Tornado(1)
- go(2)
- 架构(19)
- Vue(1)
- game(2)
- Html(6)
- Java(8)
- Mysql(37)
- Ajax(2)
- Jsp(1)
- Struts(8)
- Linux(73)
- JavaScript(39)
- Staruml(0)
- Mouth(1)
- Php(102)
- Windows(8)
- Message(48)
- Lua(10)
- Compute(1)
- Redis(7)
- Nginx(12)
- Jquery(1)
- Apache(1)
- cocos2d-x(8)
最新日志
- 成为架构师,如何真正具备“系统思维”?
- DHCP(Dynamic Host Configuration Protocol) 动态主机配置协议
- 从技术专家到战略领袖:成就技术总监的路径与思维
- python 如何读取超大的文件
- python requests 模块
- 如何给自己充电?
- 告别2024,迎接2025:深耕梦想,向前而行
- linux 的 dns 缓存,NSCD 服务
- The following untracked working tree files would be overwritten by checkout
- insecure connection not allowed,产生原因及如何解决