1. The problem statement, all variables and given/known data:
I'm trying to use a directory path to enter a new directory and sort the files there. I'm using the language C with a system call in Unix to sort the files from smallest to largest.
2. Relevant commands, code, scripts, algorithms:
Code:
system("ls -al | sort -k5n >> tempfile.txt");
This command enters the sorted data into a temporary directory named tempfile.txt. Tempfile.txt is later deleted. But the command:
system("ls -al | sort -k5n"); sorts only the data in the current directory. I would like to be able to sort data in any directory entered into my program.
3. The attempts at a solution (include all code and scripts):
i've tried:
Code:
sprintf(cmd, "cd %s", argv[PATH]);
system(cmd);
to change directories before using the sort command. But this doesn't work. I do not know very much about the Unix language to create a command that changes directories and sorts the files it finds there.
4. Complete Name of School (University), City (State), Country, Name of Professor, and Course Number (Link to Course):
University at Albany, Albany NY, United States, S.S. Ravi, CSI 402
Note: Without school/professor/course information, you will be banned if you post here! You must complete the entire template (not just parts of it).
I need to determine if any three files have the same file size in a specified directly?
I have got as far as listing the file sizes but where to go from here?
ls -al |sort -n -r +4 | awq '{print $5}'
Thanks in anticipation (5 Replies)
Hi guys,
Probably an easy one, but how do you sort a directory so that the files come first, then subdirectories?
ie ./dir1 contains
file 1
subdir 1
file 2
i need it to become
file 1
file 2
subdir 1
as i'm using it in a script to pass each one through a for loop, and would... (2 Replies)
Hi guys,
Probably an easy one, but how do you sort a directory so that the files come first, then subdirectories?
ie ./dir1 has
file 1
subdir 1
file 2
i need it to become
file 1
file 2
subdir 1
as i'm using it in a script to pass each one through a for loop, and would like all... (3 Replies)
Hiiii,
I have written a script which takes backup of some log files.
let say the backuplocation is ---
/abc/backuplocation
-rw-r--r-- 1 webmut2 spgroup 0 Jan 27 02:41 ansrpt23994.log
-rw-r--r-- 1 webmut2 spgroup 0 Jan 27 02:41 ansrpt3601.log
-rw-r--r-- 1... (2 Replies)
Hi ,
I want to list all files in the order of size . Just want to know which files occupies more size and which occupies less size .
Is it possible with ls command ? :)
Thanks,
Arun. (1 Reply)
Hi All,
I have a requirement like below,
I want to transfer few file of size > 5 Mb from one directory to anotehr directory. Please let me know the command how can i do that
Sorry if it looks silly
Senthil (6 Replies)
Hi,
I am trying to get the total file size for certain files per directory.
I am using
find /DirectoryPath -name '*.dta' -exec ls -l {} \; | awk '{ print $NF ": " $5 }' > /users/cergun/My\ Documents/dtafiles.txt
but this lists all the files in the directories.
I need the total... (9 Replies)
I've got an assignment where I've made a script that searched and found files that meet certain requirement. (Files that are a size that is from "x" to "y" in size and has a certain name).
The script sends the output to a file that gathers the info.
The problem is I'd like to sort what's... (3 Replies)
Hi,
Can someone help me to get the complete files size (sum) over a perod time (1 day,2days)in a directory.
eg:
Directory :ABC
I have a1,a2,a3 files are created in last 24 hours so I need to get the some of all these files.
I am using the below find command but its giving me the... (1 Reply)
To find the whole size of a particular directory i use "du -sk /dirname".. but after finding the direcory's size how do i make conditions like if the size of the dir is more than 1 GB i hav to delete some of the files inside the dir (0 Replies)
Discussion started by: shaal89
0 Replies
LEARN ABOUT PHP
scandir
SCANDIR(3) 1 SCANDIR(3)scandir - List files and directories inside the specified pathSYNOPSIS
array scandir (string $directory, [int $sorting_order = SCANDIR_SORT_ASCENDING], [resource $context])
DESCRIPTION
Returns an array of files and directories from the $directory.
PARAMETERS
o $directory
- The directory that will be scanned.
o $sorting_order
- By default, the sorted order is alphabetical in ascending order. If the optional $sorting_order is set to SCANDIR_SORT_DESCEND-
ING, then the sort order is alphabetical in descending order. If it is set to SCANDIR_SORT_NONE then the result is unsorted.
o $context
- For a description of the $context parameter, refer to the streams section of the manual.
RETURN VALUES
Returns an array of filenames on success, or FALSE on failure. If $directory is not a directory, then boolean FALSE is returned, and an
error of level E_WARNING is generated.
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.4.0 | |
| | |
| | $sorting_orderconstants were added. Any nonzero |
| | value caused descending order in previous ver- |
| | sions. So for all PHP versions, use 0 for ascend- |
| | ing order, and 1 for descending order. An option |
| | for SCANDIR_SORT_NONE behavior did not exist |
| | prior to PHP 5.4.0. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
A simple scandir(3) example
<?php
$dir = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);
print_r($files1);
print_r($files2);
?>
The above example will output something similar to:
Array
(
[0] => .
[1] => ..
[2] => bar.php
[3] => foo.txt
[4] => somedir
)
Array
(
[0] => somedir
[1] => foo.txt
[2] => bar.php
[3] => ..
[4] => .
)
Example #2
PHP 4 alternatives to scandir(3)
<?php
$dir = "/tmp";
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
$files[] = $filename;
}
sort($files);
print_r($files);
rsort($files);
print_r($files);
?>
The above example will output something similar to:
Array
(
[0] => .
[1] => ..
[2] => bar.php
[3] => foo.txt
[4] => somedir
)
Array
(
[0] => somedir
[1] => foo.txt
[2] => bar.php
[3] => ..
[4] => .
)
NOTES
Tip
A URL can be used as a filename with this function if the fopen wrappers have been enabled. See fopen(3) for more details on how to
specify the filename. See the "Supported Protocols and Wrappers" for links to information about what abilities the various wrappers
have, notes on their usage, and information on any predefined variables they may provide.
SEE ALSO opendir(3), readdir(3), glob(3), is_dir(3), sort(3).
PHP Documentation Group SCANDIR(3)