标签: aix

什么是unix命令来查看有多少磁盘空间以及剩余多少?

我正在寻找相当于右键单击Windows中的驱动器并查看使用的磁盘空间和剩余信息.

unix aix diskspace

20
推荐指数
4
解决办法
13万
查看次数

Unix:快速'删除目录'以清理每日构建

有没有更快的方法来删除目录,然后只需提交

rm -r -f *directory*
Run Code Online (Sandbox Code Playgroud)

?我问这个是因为我们的日常跨平台构建非常庞大(例如每个构建4GB).因此,某些机器上的硬盘经常耗尽空间.

这就是我们的AIX和Solaris平台的情况.

也许在这些平台上有删除目录的"特殊"命令?

PASTE-EDIT(将我自己的答案移到问题中):

我一般都在想为什么'rm -r -f'这么慢.不'rm'只需要修改'..'或'.' 用于取消分配文件系统条目的文件.

就像是

mv *directory* /dev/null
Run Code Online (Sandbox Code Playgroud)

会好的.

aix solaris build

19
推荐指数
4
解决办法
4万
查看次数

Linux:如何查找守护程序进程和僵尸进程列表

我试过检查谷歌,但我找不到与实际问题相关的太多信息.

如何获得僵尸进程和守护程序进程的整合列表?我如何在不同的操作系统上执行此操作.Linux呢?AIX?视窗?

我确信,基于PID,我们无法确定过程的类型.通过终端运行可能也无济于事.

unix linux aix admin linux-kernel

16
推荐指数
3
解决办法
6万
查看次数

如何使用Eclipse CDT进行远程调试而不使用gdbserver?

我们在Windows上使用Eclipse CDT 5 C++ IDE在远程AIX主机上开发C++应用程序.

Eclipse CDT能够使用gdbserver执行远程调试.不幸的是,AIX上不支持gdbserver.

是否有人熟悉使用Eclipse CDT远程调试而无需gdbserver?也许使用SSH shell连接到gdb?

c++ eclipse aix remote-debugging eclipse-cdt

14
推荐指数
2
解决办法
3万
查看次数

从shell脚本运行sqlplus时管理错误处理

#!/bin/sh

echo "Please enter evaluate database username"
read eval_user
echo "Please enter evaluate database password"
read eval_pass
echo "Please enter the database name"
read db_name

LOGFILE=shell_log.txt

$ORACLE_HOME/bin/sqlplus -s /nolog <<-EOF>> ${LOGFILE}
connect $eval_user/$eval_pass@$db_name
WHENEVER OSERROR EXIT 9;
WHENEVER SQLERROR EXIT SQL.SQLCODE;
DBMS_OUTPUT.put_line('Connected to db');
EOF

if [ $? != 0 ]
then 
echo "The upgrade script failed. Please refer to the log results.txt for more information"
echo "Error code $?"
exit 0;
fi
Run Code Online (Sandbox Code Playgroud)

我正在输入垃圾值,试图强制此脚本失败.但是,令人讨厌的是,它一直在前进,没有提到任何错误代码.还有什么需要做的吗?

oracle shell aix sqlplus

14
推荐指数
3
解决办法
7万
查看次数

从Java运行UNIX命令作为不同的用户

尝试编写能够以不同的UNIX用户身份运行UNIX命令的Java程序.我有用户的密码,我知道我想要运行的命令,但该命令必须以该用户身份运行 - 所以我必须先以该用户身份登录.

例如:假设我们有一个用户,jim,谁想要查看bob的主目录中的内容,并且(无论出于何种原因)jim可以访问执行ls而bob没有.我们目前以bob身份登录.这是我们(可以)做的:

bob@host$ su jim && ls ~bob
Run Code Online (Sandbox Code Playgroud)

问题是,我们会收到jim密码的提示.因为这是从Java程序运行的,即

Process p = Runtime.getRuntime().exec("su jim && ls ~bob");
Run Code Online (Sandbox Code Playgroud)

我们收到jim密码的提示并挂断了.我们知道jim的密码.但是,我不能输入它.

此外,我们不能使用Expect脚本(没有安装它),我们不能成为超级用户.我也考虑使用SSH来尝试这个,因为我们可以在技术上做到这一点

bob@host$ ssh jim@host "ls ~bob"
Run Code Online (Sandbox Code Playgroud)

但由于我没有设置无密码SSH的权限,这也行不通.

我最后的努力是尝试使用SSH库来实现Java,因为密码可供Java程序使用,我可以用它登录(并执行正确的命令).但是因为我要在同一台主机上运行,​​所以看起来有点矫枉过正.

有什么建议?

PS:Java版本1.4.2,无法升级; AIX UNIX 5.3.

java unix passwords ssh aix

13
推荐指数
2
解决办法
2万
查看次数

AIX上的asprintf的替代或解决方法

我正在尝试在AIX上构建python-kerberos.kerberospw.c使用了对asprintf的调用,但是从谷歌告诉我的是,asprintf在AIX上不存在.

我看到http://www.koders.com/c/fidAA9B130D588302673A28B568430A83131B7734C0.aspx?s=windows.h,它看起来像我可以创建一个替身asprintf,但我不知道这个会去或我会怎样#include它在kerberospw.c中.

有没有办法可以使用koders.com示例或其他一些代码"伪造"asprintf?我可以只包含asprintf函数,如kerberospw.c所示?我不是C编码员,但是

asprintf(char**resultp,const char*format,...)

用最后的圆点看起来对我来说不是一个有效的签名.kerberospw.c的相关部分如下

asprintf(消息"%*S:%*S",(int)的result_code_string.length,
(字符*)result_code_string.data,
(INT)result_string.length,
(字符*)result_string.data);

我知道我可以联系上python-的Kerberos的作者,但)我认为这将是有帮助的潜在的补丁,如果我这样做,和b)有可能是其他的软件我碰到运行使用asprintf,这将是很高兴有一个解决方法.

c aix printf asprintf

12
推荐指数
2
解决办法
2816
查看次数

Perl:文件大于2 GB的glob的奇怪行为

我只是想给出一个带有通配符路径的文件名列表.

my $path = "/foo/bar/*/*.txt";
my @file_list = glob($path);
foreach $current_file (@file_list) {
   print "\n- $current_file";
}
Run Code Online (Sandbox Code Playgroud)

大多数情况下这很好用,但是如果有一个大于2GB的文件,在某个/ foo/bar/*子路径中,glob会返回一个没有任何错误或警告的空数组.

如果我删除文件文件或添加如下字符/括号序列:

my $path = "/foo/bar/*[0-9]/*.txt";
Run Code Online (Sandbox Code Playgroud)

要么

my $path = "/foo/bar/*1/*.txt";
Run Code Online (Sandbox Code Playgroud)

然后glob再次运作.

更新:

这是一个例子(对于业务策略,我必须屏蔽路径名):

[root]/foo/bar # ls -lrt
drwxr-xr-x    2 root     system         256 Oct 11 2006  lost+found
drwxr-xr-x    2 root     system         256 Dec 27 2007  abc***
drwxr-xr-x    2 root     system         256 Nov 12 15:32 cde***
-rw-r--r--    1 root     system  2734193149 Nov 15 05:07 archive1.tar.gz
-rw-r--r--    1 root     system     6913743 Nov 16 05:05 …
Run Code Online (Sandbox Code Playgroud)

perl aix glob

11
推荐指数
1
解决办法
375
查看次数

SSH到服务器,Sudo su - 然后在bash中运行命令

我有以下内容

#!/bin/bash

USER='scott'
PASS='tiger'

ssh -t $USER@server006.web.com "sudo su - http" 
Run Code Online (Sandbox Code Playgroud)

这是Works,但我试图让它在之后运行一个脚本,如果我这样做,使用-c或<

该脚本像这样做一个grep:

grep -i "Exception:" /opt/local/server/logs/exceptions.log | grep -e "|*-*-*:*:*,*|" | tail -1 | awk -F'|' '{print $2}' >> log.log
Run Code Online (Sandbox Code Playgroud)

这也适用于它自己,但我需要http才能做到这一点.

我也不能把SCP的输出输回到server001,所以我被困在这里,

任何想法都会被接受赞赏.本

ssh bash shell aix sudo

11
推荐指数
2
解决办法
2万
查看次数

[:-eq:预期一元运算符

#!/bin/bash    
export PROCNAME=test
export TABLE_ID=0

if [ ${TABLE_ID} -eq "" ]; then
        echo hello
fi
Run Code Online (Sandbox Code Playgroud)

以上抛出错误:

[:-eq:预期一元运算符

如何用双方括号解决这个问题 [[ ${TABLE_ID} -eq "" ]].

bash aix

11
推荐指数
1
解决办法
9697
查看次数