A variation of RudiC's solution that should work in OS X. If your file names have spaces in the name then
And if your files do not have spaces in the name then
Remove the echo to actually move the file.
There are a few things we could do to speed up processing 690,000 files, but we need a few more details to come up with something that stands a chance of working correctly and reasonably quickly. (Nothing reading 690,000 files is going to be quick, but there may be a difference between slow and SSSSLLLLLOOOOWWWW.)
Do any of the filenames you need to move contain any of the characters, <space>, <tab>, <newline>, <single-quote>, or <double-quote>? If so, which of these characters might appear in your filenames? If some of these characters do appear in your filenames, do they appear in all of your filenames? If not, how many of your filenames (that will be moved) will contain any of these characters?
Are all of the files you need to evaluate:
in a single directory?
in a single directory hierarchy?
in several single directories?
in several directory hierarchies?
If they are in single directories, do any of those directories contain any subdirectories?
Are all of the selected files going to a single directory? Or, if the files are coming from a directory hierarchy, is the hierarchy to be copied to the destination directory?
What is the minimum size, maximum size, and approximate average size (in bytes) of the files you need to evaluate?
Is it really true that all that needs to be checked is that there are three or more hyphens on the 3rd line of a file, or do we need to verify that the line starts with a [, ends with a ], and contains at least three hyphens surrounded by one of more lowercase letters?
Out of the 690,000 files you need to process; how many do you expect will be moved?
This User Gave Thanks to Don Cragun For This Post:
I am so so sorry for the late reply guys. I lost the file and it took me quite awhile to retrieve those back as the internet is slow here.
So,
Here's the info of the file size : 2,590,008,989 bytes (3.69 GB on disk) for 696,545 items
I believe each of the file size varies from 6kb to 18kb
And I am definitely sure all of the files are in single directory cause I am the one who created this mess =x
Some of the files doesn't contain hyphens at the 3rd lines at all. Especially those which file names are more than one word.
As it's all in single directory, it's hard for me to access them without terminal. So I wish to organize them by moving them into folders like 0H, 1H, 2H, 3H, 4H and so on. (H stands for hyphen btw )
Here's a sample of a file content that contains Hyphen at 3rd line
And here is the one that doesn't
I didn't try the one-by-one command method as there is too many, however, I'd tried : awk 'FNR==3 && 1<gsub ("-", "&") {printf "%s%c", FILENAME, "\000"}' file* | xargs -I {X} -0 mv {X} ./new_directory
It was successfully executed and moved 14 of the files that contain one hyphens to four.
Those file names are:
But it didn't meet the purpose.
Hi 2 all,
i have had AIX 7.2
:/# /usr/IBMAHS/bin/apachectl -v
Server version: Apache/2.4.12 (Unix)
Server built: May 25 2015 04:58:27
:/#:/# /usr/IBMAHS/bin/apachectl -M
Loaded Modules:
core_module (static)
so_module (static)
http_module (static)
mpm_worker_module (static)
... (3 Replies)
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Hi everybody,
I am new at Unix/Bourne shell scripting and with my youngest experiences, I will not become very old with it :o
My code:
#!/bin/sh
set -e
set -u
export IFS=
optl="Optl"
LOCSTORCLI="/opt/lsi/storcli/storcli"
($LOCSTORCLI /c0 /vall show | grep RAID | cut -d " "... (5 Replies)
Okay, so I have a rather large text file and will have to process many more and this will save me hours of work.
I'm not very good at scripting, so bear with me please.
Working on Linux RHEL
I've been able to filter and edit and clean up using sed, but I have a problem with moving lines.
... (9 Replies)
How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address
and column 3 contains “cc” e-mail address to include with same email.
Sample input file, email.txt
Below is an sample code where... (2 Replies)
I have a bunch of random character lines like ABCEDFG. I want to find all lines with "A" and then change any "E" to "X" in the same line. ALL lines with "A" will have an "X" somewhere in it. I have tried sed awk and vi editor. I get close, not quite there. I know someone has already solved this... (10 Replies)
Hi ,
i have some files of specific pattern ...i need to look for files which are having size greater than zero and move those files to another directory..
Ex...
abc_0702,
abc_0709,
abc_782
abc_1234 ...etc
need to find out which is having the size >0 and move those to target directory..... (7 Replies)
strange :)
can you tell why?:cool:
#!/bin/bash
echo " enter your age "
read age
if ; then
echo " you do not have to pay tax "
elif ]; then
echo " you are eligible for income tax "
else
echo " you dont have to pay tax "
fi (3 Replies)
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Hi Friends,
Can any of you explain me about the below line of code?
mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`
Im not able to understand, what exactly it is doing :confused:
Any help would be useful for me.
Lokesha (4 Replies)