11-19-2008
Any way to grep a string in directories and return the result with diskusage aswell?
What Im basically trying to do is this:
I have a small script that can grep any parameter entered into a search string, then print to the screen the name of each file the parameter appears in as well as the file path, ie the directory.
The code Im using just for this is....
Directory
---------
1. Search /export/home/btch1/nelse2
Enter Choice number ( press q to quit ) :\c"
read choice
case $choice in
1)
echo "------------------------------"
echo "Searching /xxxx/xxxx"
echo "------------------------------"
echo $string
grep -li "$string" $DIRECTORY/*
echo "--------------------------------------"
echo " Displaying directory size"
echo "--------------------------------------"
df -k .
;;
*)
Which brings up the results as follows
Searching /xxxx/xxxx
------------------------------
2005
/export/home/btch1/nelse2/PR_MX_INT_0001_20080917180857.dat
/export/home/btch1/nelse2/Search2.ksh
--------------------------------------
Displaying directory size
--------------------------------------
Filesystem kbytes used avail capacity Mounted on
/dev/vx/dsk/bootdg/rootvol
10080200 7323251 2656147 74% /
What I would like though is for the 2 resulting files displayed to have thier filesize before or after aswell, for example
1288 /export/home/btch1/nelse2/Search2.ksh
ive tried putting du before the grep and piping to the rest of the code, but it either doesnt work or just prints the filesize and not the file name, or just the filesize and not the filename, so the likes of
du - sk | grep -li "$string" $DIRECTORY/*
doesn't work
Can anyone help?
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hello,
iostat -En | grep Vendor | grep -v DV | awk '{print $1 $2}' | sort -u
returns
Vendor:HP
I want to append Disk to it. i.e.:
Disk Vendor:HP
how to do that?
thanks (8 Replies)
Discussion started by: melanie_pfefer
8 Replies
2. Shell Programming and Scripting
Hi All,
I amlearning UNIX scripting. I have a small query. I would be thankful if any one helps me out.
I have a below piece of code which delets the files. If file dosent have the permissions to delete a particular file I have used 2>>operator to track the error code.
But my objective is... (1 Reply)
Discussion started by: manas6
1 Replies
3. UNIX for Dummies Questions & Answers
Hello,
I looking to use grep to return a string with exactly n matches.
I'm building off this:
ls -aLl /bin | grep '^.\{9\}x' | tr -s ' '
-rwxr-xr-x 1 root root 632816 Nov 25 2008 vi
-rwxr-xr-x 1 root root 632816 Nov 25 2008 view
-rwxr-xr-x 1 root root 16008 May 25 2008... (7 Replies)
Discussion started by: MykC
7 Replies
4. Solaris
I have a sun4u system running Solaris 8. I tried running the df command but it returns a blank result. Also I'm unable to collect an explorer from this system as the OS complains that the disk is full. What could be going on here? (10 Replies)
Discussion started by: dperry1973
10 Replies
5. Shell Programming and Scripting
Hi,
I have a problem that I am sure someone will know the answer to. Currently I have a script which returns a binary output if it finds a certain search string (in this case relating to a DRBD cluster) as follows:
searchstring="cs:Connected st:Primary/Secondary ds:UpToDate/UpToDate"
&& echo... (3 Replies)
Discussion started by: almightybunghol
3 Replies
6. Shell Programming and Scripting
Hello,
Thanks in advance for the query.
There is a log file abcd.log which has multible line like this.
"hello1" , "hello2", "hello3" , "hello4" , "hello5"
I want to grep for the lines which has "hello4" & "hello5" and use "hello2" to grep the same log file again.
All these should... (8 Replies)
Discussion started by: kzenthil
8 Replies
7. UNIX for Dummies Questions & Answers
Hi all,
Using grep command, i want to find the pattern of text in all directories and sub-directories.
e.g: if i want to search for a pattern named "parmeter", i used the command
grep -i "param" ../*
is this correct? (1 Reply)
Discussion started by: vinothrajan55
1 Replies
8. Shell Programming and Scripting
Main_script.sh
#! /bin/sh
./Sub_script.sh
rc=$?
echo "Return code from Sub_script.sh : $rc"
if ; then
echo "$rc = 991"
echo ""
exit 1
elif ; then
echo "$rc = 992"
echo ""
exit 1
elif ; then
echo "$rc = 0"
echo ""
exit 1
fi (2 Replies)
Discussion started by: duddukuri
2 Replies
9. Shell Programming and Scripting
Hi Gurus,
I need a script to compare two files: sample file like below:
list:
cde,file4
cde,file5
def,file6
def,file7
def,file8
abc,file1
abc,file2
abc,file3
acd,file9
acd,file10
tmp
file1
file2
file3
file4 (12 Replies)
Discussion started by: ken6503
12 Replies
10. UNIX for Beginners Questions & Answers
Lets say I have a massive directory which is filled with other directories all filled with different c++ scripts and I want a listing of all the scripts that contain the string: "this string". Is there a way to use a grep search for that? I tried:
grep -lr "this string" *
but I do not... (3 Replies)
Discussion started by: Circuits
3 Replies
ECHO(3) 1 ECHO(3)
echo - Output one or more strings
SYNOPSIS
void echo (string $arg1, [string $...])
DESCRIPTION
Outputs all parameters.
echo is not actually a function (it is a language construct), so you are not required to use parentheses with it. echo (unlike some other
language constructs) does not behave like a function, so it cannot always be used in the context of a function. Additionally, if you want
to pass more than one parameter to echo, the parameters must not be enclosed within parentheses.
echo also has a shortcut syntax, where you can immediately follow the opening tag with an equals sign. Prior to PHP 5.4.0, this short syn-
tax only works with the short_open_tag configuration setting enabled.
I have <?=$foo?> foo.
PARAMETERS
o $arg1
- The parameter to output.
o $...
-
RETURN VALUES
No value is returned.
EXAMPLES
Example #1
echo examples
<?php
echo "Hello World";
echo "This spans
multiple lines. The newlines will be
output as well";
echo "This spans
multiple lines. The newlines will be
output as well.";
echo "Escaping characters is done "Like this".";
// You can use variables inside of an echo statement
$foo = "foobar";
$bar = "barbaz";
echo "foo is $foo"; // foo is foobar
// You can also use arrays
$baz = array("value" => "foo");
echo "this is {$baz['value']} !"; // this is foo !
// Using single quotes will print the variable name, not the value
echo 'foo is $foo'; // foo is $foo
// If you are not using any other characters, you can just echo variables
echo $foo; // foobar
echo $foo,$bar; // foobarbarbaz
// Some people prefer passing multiple parameters to echo over concatenation.
echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters.', chr(10);
echo 'This ' . 'string ' . 'was ' . 'made ' . 'with concatenation.' . "
";
echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;
// Because echo does not behave like a function, the following code is invalid.
($some_var) ? echo 'true' : echo 'false';
// However, the following examples will work:
($some_var) ? print 'true' : print 'false'; // print is also a construct, but
// it behaves like a function, so
// it may be used in this context.
echo $some_var ? 'true': 'false'; // changing the statement around
?>
NOTES
Note
Because this is a language construct and not a function, it cannot be called using variable functions.
SEE ALSO
print(3), printf(3), flush(3), Heredoc syntax.
PHP Documentation Group ECHO(3)