实践OK,您是否需要模拟初始登录,您可以使用它sudo -s来获取root shell。
来自:https://qa.1r1g.cn/serverfault/ask/25709631/
首先,提升用户至root
#su - (注意后面的-)
2、添加文件写权限。
chmod u+w /etc/sudoers (注:linux下)
chmod u+w /usr/local/etc/sudoers (注:FreeBSD下)
3、添加下面这一行至上述文件
username ALL=(ALL) ALL(注:linux下)
username ALL=(ALL) SETENV: ALL(注:FreeBSD下)
我的FreeBSD:
4、保存并退出
5、取消文件写权限
否则出现:sudo: /usr/local/etc/sudoers is mode 0640, should be 0440 (注:FreeBSD下)
chmod u-w /etc/sudoers (注:linux下)
chmod u-w /usr/local/etc/sudoers (注:FreeBSD下)
好了,这样就可以了。(最好重新登陆改账号!)
PS:
多谢那位兄弟的提醒。。。
来自:https://qa.1r1g.cn/serverfault/ask/25709631/
首先,提升用户至root
#su - (注意后面的-)
2、添加文件写权限。
chmod u+w /etc/sudoers (注:linux下)
chmod u+w /usr/local/etc/sudoers (注:FreeBSD下)
3、添加下面这一行至上述文件
username ALL=(ALL) ALL(注:linux下)
username ALL=(ALL) SETENV: ALL(注:FreeBSD下)
我的FreeBSD:
xiangdong2 ALL=(ALL) SETENV: ALL
4、保存并退出
5、取消文件写权限
否则出现:sudo: /usr/local/etc/sudoers is mode 0640, should be 0440 (注:FreeBSD下)
chmod u-w /etc/sudoers (注:linux下)
chmod u-w /usr/local/etc/sudoers (注:FreeBSD下)
好了,这样就可以了。(最好重新登陆改账号!)
PS:
多谢那位兄弟的提醒。。。
在邮件的smtp协议中通常对内容进行base64编码传输,在邮箱的path路径下如果是外域过来的信件一般都是经过编码的,自己本域的信件可能是明文存放,为此,出现了base64解码和编码,前些javascrip都可以实现,有专门写了个界面去干这事:
http://www.cnd8.com/down/24926.htm?no=1 可以下载!
http://www.cnd8.com/down/24926.htm?no=1 可以下载!
去sun下载一个jdk的bin包:
https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewFilteredProducts-SingleVariationTypeFilter
然后对这个包:
chmod a+x jdk-6u11-linux-i586.bin
./jdk-6u11-linux-i586.bin
确认安装即可,然后将解压的文件放到自己的一个目录,修改PATH变量,然后在终端运行:
即可!
https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewFilteredProducts-SingleVariationTypeFilter
然后对这个包:
chmod a+x jdk-6u11-linux-i586.bin
./jdk-6u11-linux-i586.bin
确认安装即可,然后将解压的文件放到自己的一个目录,修改PATH变量,然后在终端运行:
java
javac
javac
即可!
兄弟部门在全国N台服务器的空间放一些视频文件,由于只给我开放FTP帐号,于是找了一款Linux命令行下的FTP客户端软件──ncftp,用来作整个目录批量上传。ncftpput是它的一个附带程序,在shell脚本中调用ncftpput上传文件到FTP服务器,非常方便。
详细内容见其官方网站:http://www.ncftp.com/
编译安装:
示例:将本地/data0/htdocs/videofile/flv/games/目录内的所有文件和目录,上传到FTP服务器的flv/games/目录内(如果不存在flv/games/目录则自动创建)。
本人在freebsd安装了一下,没有问题,也能安装喔。。!
详细内容见其官方网站:http://www.ncftp.com/
编译安装:
wget ftp://ftp.ncftp.com/ncftp/ncftp-3.2.2-src.tar.gz
tar zxvf ncftp-3.2.2-src.tar.gz
cd ncftp-3.2.2/
./configure --prefix=/usr/local/ncftp
make && make install
tar zxvf ncftp-3.2.2-src.tar.gz
cd ncftp-3.2.2/
./configure --prefix=/usr/local/ncftp
make && make install
示例:将本地/data0/htdocs/videofile/flv/games/目录内的所有文件和目录,上传到FTP服务器的flv/games/目录内(如果不存在flv/games/目录则自动创建)。
/usr/local/ncftp/bin/ncftpput -u FTP帐号 -p FTP密码 -P FTP端口 -m -R 192.168.1.2 flv/games/ /data0/htdocs/videofile/flv/games/*
本人在freebsd安装了一下,没有问题,也能安装喔。。!
有一个文件如下:
我现在想显示每一行, 但每一行的最后一个字段不显示, 例如结果为:
请问应该怎么实现啊, 先谢谢了
awk '{$NF="";print}'
$NF是最后一个字段的内容,把最后一个字段清空!
二)AWK显示最后一列的写法,$NF最后一列的使用方法:
但是如何获取最后一列呢?
可以使用awk -F',' '{print $NF}' 来获取,mark一下
来自:https://blog.csdn.net/slx_2011/article/details/19827307
ls -lart /data/logs/nginx/*|awk '{print $NF}'
/data/logs/nginx/error.log
/data/logs/nginx/access.log
/data/logs/nginx/jackxiang.txt
/data/logs/nginx/jackX.tt
三)单独的NF是一个分割多少列的值:
NF 表示的是浏览记录的域的个数
$NF 表示的最后一个Field(列),即输出最后一个字段的内容
[root@localhost SHELL]# free -m | grep buffers\/
-/+ buffers/cache: 1815 1859
[root@localhost SHELL]# free -m | grep buffers\/ | awk '{print $NF}'
1859
[root@localhost SHELL]# free -m | grep buffers\/ | awk '{print NF}'
4
[root@localhost SHELL]#
最后,字段分隔符问题:awk 默认以空格或制表符作为字段分隔符。如果你的文本中某些字段之间使用了多个空格或其他特殊字符分隔,可能会导致 $NF 获取错误。
这里 -F'[[:space:]]+' 表示字段分隔符是任意数量的空白字符(包括空格、制表符等)。
cat project_data_all_343_with_Classification.txt | awk -F'[[:space:]]+' '{print $NF}'
这种方法仍然不行,可以尝试打印每一行的字段总数和内容,以便调试(NF表示有多少个列的值):
cat project_data_all_343_with_Classification.txt | awk '{print NF, $0}'
cat project_data_all_343_with_Classification.txt | awk '{print NF, $0}'|grep 华为
5 84 华为sdn AC controller控制器 运维与基础设施 <=== 逗号给分出了5列,不是再是三列。
3 114 华为5G审核系统 安全与合规
3 115 华为云内容审核 安全与合规
3 257 华为汉雅项目 业务应用与工具
---------------------
作者:lm_123_456
来源:CSDN
原文:https://blog.csdn.net/github_33736971/article/details/54286736
版权声明:本文为博主原创文章,转载请附上博文链接!
w aa n t ax d
t ch ae f
d jh ah s t ih s
t ch ae f
d jh ah s t ih s
我现在想显示每一行, 但每一行的最后一个字段不显示, 例如结果为:
w aa n t ax
t ch ae
d jh ah s t ih
t ch ae
d jh ah s t ih
请问应该怎么实现啊, 先谢谢了
awk '{$NF="";print}'
awk '{$NF="";print}' test.txt
$NF是最后一个字段的内容,把最后一个字段清空!
[root@vm19 ~]# awk '{$NF="";print}' test.txt
w aa n t ax
t ch ae
d jh ah s t ih
w aa n t ax
t ch ae
d jh ah s t ih
二)AWK显示最后一列的写法,$NF最后一列的使用方法:
但是如何获取最后一列呢?
可以使用awk -F',' '{print $NF}' 来获取,mark一下
来自:https://blog.csdn.net/slx_2011/article/details/19827307
ls -lart /data/logs/nginx/*|awk '{print $NF}'
/data/logs/nginx/error.log
/data/logs/nginx/access.log
/data/logs/nginx/jackxiang.txt
/data/logs/nginx/jackX.tt
三)单独的NF是一个分割多少列的值:
NF 表示的是浏览记录的域的个数
$NF 表示的最后一个Field(列),即输出最后一个字段的内容
[root@localhost SHELL]# free -m | grep buffers\/
-/+ buffers/cache: 1815 1859
[root@localhost SHELL]# free -m | grep buffers\/ | awk '{print $NF}'
1859
[root@localhost SHELL]# free -m | grep buffers\/ | awk '{print NF}'
4
[root@localhost SHELL]#
最后,字段分隔符问题:awk 默认以空格或制表符作为字段分隔符。如果你的文本中某些字段之间使用了多个空格或其他特殊字符分隔,可能会导致 $NF 获取错误。
这里 -F'[[:space:]]+' 表示字段分隔符是任意数量的空白字符(包括空格、制表符等)。
cat project_data_all_343_with_Classification.txt | awk -F'[[:space:]]+' '{print $NF}'
这种方法仍然不行,可以尝试打印每一行的字段总数和内容,以便调试(NF表示有多少个列的值):
cat project_data_all_343_with_Classification.txt | awk '{print NF, $0}'
cat project_data_all_343_with_Classification.txt | awk '{print NF, $0}'|grep 华为
5 84 华为sdn AC controller控制器 运维与基础设施 <=== 逗号给分出了5列,不是再是三列。
3 114 华为5G审核系统 安全与合规
3 115 华为云内容审核 安全与合规
3 257 华为汉雅项目 业务应用与工具
---------------------
作者:lm_123_456
来源:CSDN
原文:https://blog.csdn.net/github_33736971/article/details/54286736
版权声明:本文为博主原创文章,转载请附上博文链接!
Fedora7安装Beryl手记
http://hi.baidu.com/busybox/blog/item/3447378210883794f603a6bb.html
Compiz Fusion新增两大特效!“Vista”和“Leopard”:
http://hi.baidu.com/busybox/blog/item/3447378210883794f603a6bb.html
资料:
http://bbs.wuyou.com/viewthread.php?tid=104536&extra=page%3D5
http://cpublic.bloghome.cn/posts/94671.html
http://www.pmme.cn/archives/vista-vs-ubuntu-beryl/
http://hi.baidu.com/busybox/blog/item/3447378210883794f603a6bb.html
Compiz Fusion新增两大特效!“Vista”和“Leopard”:
http://hi.baidu.com/busybox/blog/item/3447378210883794f603a6bb.html
资料:
http://bbs.wuyou.com/viewthread.php?tid=104536&extra=page%3D5
http://cpublic.bloghome.cn/posts/94671.html
http://www.pmme.cn/archives/vista-vs-ubuntu-beryl/
搜听:http://mp3.iciba.com/viewsong-11357.shtml#
I never thought that I would feel this way
All I ever wanted was for love to stay
阅读全文
I never thought that I would feel this way
All I ever wanted was for love to stay
阅读全文
cherokee 号称是目前最快的 web 服务器软件,在性能上,甚至比 Nginx 还略胜一筹。与 Apache、Lighttpd、Nginx 等其他同类软件的对比,大家不妨看看这个测试页面。我在本机安装了 Cherokee,一番使用下来,Cherokee 给我的感觉是,其易用性做得也很不错。
Cherokee 的功能包括支持 FastCGI、SCGI、PHP、CGI、TLS 及 SSL 加密连接,虚拟主机,授权认证,实时编码,载入均衡,与 Apache 兼容的 log 文件等等。
阅读全文
Cherokee 的功能包括支持 FastCGI、SCGI、PHP、CGI、TLS 及 SSL 加密连接,虚拟主机,授权认证,实时编码,载入均衡,与 Apache 兼容的 log 文件等等。
阅读全文
理论上应该在/usr/local/etc/里,看见php.ini-dist和php.ini-recommend了,复制成php.ini,通过查看包对应的文件位置:
testsina# pkg_info -L php5-5.2.6_2|grep php.ini
/usr/local/etc/php.ini-dist
/usr/local/etc/php.ini-recommended
/usr/local/include/php/main/php_ini.h
/usr/local/etc/php.ini-dist
/usr/local/etc/php.ini-recommended
/usr/local/include/php/main/php_ini.h
转: http://blog.ednchina.com/cheungman/34818/message.aspx
这个项目是我在S3C44B0上跑裸机(就是说不加操作系统,把S3C44B0当成超级单片机使用),通过驱动DS18B20采集温度数据并通过超级终端把温度显示出来。本人是把单片机下DS18B20驱动程序移植到S3C44B0来的,所以要特别注意时序问题,主要是注意S3C44B0的主频设置问题,我在程序设置了S3C44B0的主频为20MHz。
这个项目的成功,是我学习ARM以来的一个伟大飞跃,我在QQ空间上写了一个日记,标榜为历史性的一天,可见其意义,此次成功,学习ARM我有了极大兴趣跟动力,算得上是踏进嵌入式的门槛,这也为我后来在uClinux下编写DS1820的驱动打下了基础。

下载:DownLoad
后记:学习ARM,需要良好的单片机基础,这是一定的。
s3c2410的ds18b20驱动(基于linux-2.6.24.4内核)
http://blog.chinaunix.net/u1/57747/showart_1077782.html
ds18b20温度控制器
http://linrongwu.teeta.com/blog/data/131137.html
基于ARM的DS18B20的驱动程序
http://hi.baidu.com/%CA%F7%B4%FC%D0%DC%B5%C4%B4%F3%E8%F1%CA%F7/blog/item/df2d1709dee2ac84d1581bdc.html
这个项目是我在S3C44B0上跑裸机(就是说不加操作系统,把S3C44B0当成超级单片机使用),通过驱动DS18B20采集温度数据并通过超级终端把温度显示出来。本人是把单片机下DS18B20驱动程序移植到S3C44B0来的,所以要特别注意时序问题,主要是注意S3C44B0的主频设置问题,我在程序设置了S3C44B0的主频为20MHz。
这个项目的成功,是我学习ARM以来的一个伟大飞跃,我在QQ空间上写了一个日记,标榜为历史性的一天,可见其意义,此次成功,学习ARM我有了极大兴趣跟动力,算得上是踏进嵌入式的门槛,这也为我后来在uClinux下编写DS1820的驱动打下了基础。

下载:DownLoad
后记:学习ARM,需要良好的单片机基础,这是一定的。
s3c2410的ds18b20驱动(基于linux-2.6.24.4内核)
http://blog.chinaunix.net/u1/57747/showart_1077782.html
ds18b20温度控制器
http://linrongwu.teeta.com/blog/data/131137.html
基于ARM的DS18B20的驱动程序
http://hi.baidu.com/%CA%F7%B4%FC%D0%DC%B5%C4%B4%F3%E8%F1%CA%F7/blog/item/df2d1709dee2ac84d1581bdc.html
make search name=wget
找到wget的port目录,cd到那个目录:
tip:
第一次装时贪心都选了,结果被告知:
===> wget-1.11.2 GNUTLS and OPENSSL are mutually exclusive, enable at most one of them.
*** Error code 1
两者只能选其一,这时可以删除配置文件再重新安装就可以更改选项了:
// end
testsina# whereis wget
wget: /usr/local/bin/wget /usr/local/man/man1/wget.1.gz /usr/ports/ftp/wget
说明安装成功,su 到普通用户wget即可!一般来说已经添加到PATH变量了,如没有将/usr/local/bin/添加到环境变量PATH中即可!
后来发现更简单快捷的查找ports的方法:whereis wget
反安装:
===> wget-1.11.2_1 is already installed
You may wish to ``make deinstall'' and install this port again
by ``make reinstall'' to upgrade it properly.
If you really wish to overwrite the old port of ftp/wget
without deleting it first, set the variable "FORCE_PKG_REGISTER"
in your environment or the "make install" command line.
在 Redhat/Fedora 是预设安装好 wget,而 FreeBSD 则预设没有安装,要在文本模式下载文件很不便。在 FreeBSD 要安装 wget 很容易,只要使用 ports 就行了,方法如下:
cd /usr/ports/ftp/wget
make install clean
那么系统就会自动替你完成安装了。
或者使用命令
pkg_add -r wget就可以把wget安装上去了
找到wget的port目录,cd到那个目录:
# make install clean;rehash
tip:
第一次装时贪心都选了,结果被告知:
===> wget-1.11.2 GNUTLS and OPENSSL are mutually exclusive, enable at most one of them.
*** Error code 1
两者只能选其一,这时可以删除配置文件再重新安装就可以更改选项了:
# make rmconfig
# make&make install
或者:make install clean;rehash// end
testsina# whereis wget
wget: /usr/local/bin/wget /usr/local/man/man1/wget.1.gz /usr/ports/ftp/wget
说明安装成功,su 到普通用户wget即可!一般来说已经添加到PATH变量了,如没有将/usr/local/bin/添加到环境变量PATH中即可!
后来发现更简单快捷的查找ports的方法:whereis wget
反安装:
===> wget-1.11.2_1 is already installed
You may wish to ``make deinstall'' and install this port again
by ``make reinstall'' to upgrade it properly.
If you really wish to overwrite the old port of ftp/wget
without deleting it first, set the variable "FORCE_PKG_REGISTER"
in your environment or the "make install" command line.
在 Redhat/Fedora 是预设安装好 wget,而 FreeBSD 则预设没有安装,要在文本模式下载文件很不便。在 FreeBSD 要安装 wget 很容易,只要使用 ports 就行了,方法如下:
cd /usr/ports/ftp/wget
make install clean
那么系统就会自动替你完成安装了。
或者使用命令
pkg_add -r wget就可以把wget安装上去了
ajax的基础实例,用于从数据库中检测动态检测用户名是否已经存在(php+mysql,其他只要在test.php程序上改成相应的语言就可以了!)
阅读全文
阅读全文
http://www.souzz.net/html/svg/4/34019.html
http://www.souzz.net/html/svg/4/34019.html
http://okone96.itpub.net/post/9033/226326
http://bbs.xml.org.cn/dispbbs.asp?boardID=21&ID=65234
http://www.souzz.net/html/svg/4/34019.html
http://okone96.itpub.net/post/9033/226326
http://bbs.xml.org.cn/dispbbs.asp?boardID=21&ID=65234
错误:
file_get_contents() failed to open stream: Connection timed out in /data1/www/htdocs/app.space.sina.com.cn/fface/libs/feedsender.class.php
建议加上timeout,而不是让用户无限等待。
当我们遇到文本文件体积很大时,比如超过几十M甚至几百M几G的大文件,用记事本或者其它编辑器打开往往不能成功,因为他们都需要把文件内容全部放到内存里面,这时就会发生内存溢出而打开错误,遇到这种情况我们可以使用PHP的文件读取函数file_get_contents()进行分段读取。
函数说明
string file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )
和 file() 一样,只除了 file_get_contents() 把文件读入一个字符串。将在参数 offset 所指定的位置开始读取长度为 maxlen 的内容。如果失败,file_get_contents() 将返回 FALSE。
file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法。如果操作系统支持还会使用内存映射技术来增强性能。
如果针对较小文件只是希望分段读取并以此读完可以使用fread()函数
以上就是如何使用file_get_contents函数读取大文件的方法,超级简单。
file_get_contents() failed to open stream: Connection timed out in /data1/www/htdocs/app.space.sina.com.cn/fface/libs/feedsender.class.php
建议加上timeout,而不是让用户无限等待。
<?php
$ctx = stream_context_create(array(
'http' => array(
'timeout' => 1
)
)
);
file_get_contents("http://example.com/", 0, $ctx);
?>
$ctx = stream_context_create(array(
'http' => array(
'timeout' => 1
)
)
);
file_get_contents("http://example.com/", 0, $ctx);
?>
当我们遇到文本文件体积很大时,比如超过几十M甚至几百M几G的大文件,用记事本或者其它编辑器打开往往不能成功,因为他们都需要把文件内容全部放到内存里面,这时就会发生内存溢出而打开错误,遇到这种情况我们可以使用PHP的文件读取函数file_get_contents()进行分段读取。
函数说明
string file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )
和 file() 一样,只除了 file_get_contents() 把文件读入一个字符串。将在参数 offset 所指定的位置开始读取长度为 maxlen 的内容。如果失败,file_get_contents() 将返回 FALSE。
file_get_contents() 函数是用来将文件的内容读入到一个字符串中的首选方法。如果操作系统支持还会使用内存映射技术来增强性能。
如果针对较小文件只是希望分段读取并以此读完可以使用fread()函数
以上就是如何使用file_get_contents函数读取大文件的方法,超级简单。
堆(heap)和栈(stack)有什么区别??
简单的可以理解为:
heap:是由malloc之类函数分配的空间所在地。地址是由低向高增长的。
stack:是自动分配变量,以及函数调用的时候所使用的一些空间。地址是由高向低减少的。
预备知识—程序的内存分配
阅读全文
简单的可以理解为:
heap:是由malloc之类函数分配的空间所在地。地址是由低向高增长的。
stack:是自动分配变量,以及函数调用的时候所使用的一些空间。地址是由高向低减少的。
预备知识—程序的内存分配
阅读全文
#vi /root/sunwaylove.sh
#crontab -e
1-59 * * * * /root/sunwaylove.sh
XXXXX 为你需要守护的进程名称,改脚本最好配合cron来执行,比如每1分钟判断一下进程是否存在不存则自动启动。该方法对僵尸进程不起作用。
僵尸进程:
http://www.bsdlover.cn/html/54/n-1054.html
ps -ax | grep -v grep | grep XXXXXX | cut -c1-6 |\
awk '{print $2}' |
if read pid;
then
echo ${pid}
else
XXXXXX > /dev/null 2>&1
fi
awk '{print $2}' |
if read pid;
then
echo ${pid}
else
XXXXXX > /dev/null 2>&1
fi
#crontab -e
1-59 * * * * /root/sunwaylove.sh
XXXXX 为你需要守护的进程名称,改脚本最好配合cron来执行,比如每1分钟判断一下进程是否存在不存则自动启动。该方法对僵尸进程不起作用。
僵尸进程:
http://www.bsdlover.cn/html/54/n-1054.html






