how to simulate "mkdir -p /home/blah1/blah2/blah3" in "c" where only /home exist


 
Thread Tools Search this Thread
Top Forums Programming how to simulate "mkdir -p /home/blah1/blah2/blah3" in "c" where only /home exist
# 8  
Old 10-07-2009
Quote:
Originally Posted by Corona688
Why not just append to the string instead of recreating every time?
There is nothing to recreate.

I m doing a sequence of

mkdir(dir);
chdir(dir)
for(subdir to create)
mkdir(subdir[i]);
chdir("..");

and so on, which in my case seems perfect, as I have to create a director hierarchy from a structure (list of list).

In his case, it could do something similar.

---------- Post updated at 01:50 AM ---------- Previous update was at 01:44 AM ----------

Quote:
Originally Posted by achenle
That solution introduces an effect that impacts the entire process it's running in: the changing of the current directory.

If you do something like that you will then have what's almost certainly an undocumented and definitely an unnecessary dependency on the internal implementation of what should in theory be reusable code. Unless you fully document all the internals of such calls, then you'll only have an unnecessary dependency.

And you'll outright break multithreaded apps because threads other than the one calling a mkdir() call that changes the current directory will have the current directory modified right out from under their processing.
Hmm.. Although I thought about the change of the current directory ( I use chdir(".."); to restore the current directory), I honestly didn't think about the multithreading problem. Thanks for the heads up.

S.
# 9  
Old 10-07-2009
Quote:
Originally Posted by emitrax
...

Hmm.. Although I thought about the change of the current directory ( I use chdir(".."); to restore the current directory), I honestly didn't think about the multithreading problem. Thanks for the heads up.

S.
You're welcome. And yes, I learned that one that hard way.
Login or Register to Ask a Question

Previous Thread | Next Thread

6 More Discussions You Might Find Interesting

1. AIX

Apache 2.4 directory cannot display "Last modified" "Size" "Description"

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)
Discussion started by: penchev
3 Replies

2. Shell Programming and Scripting

Bash script - Print an ascii file using specific font "Latin Modern Mono 12" "regular" "9"

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)
Discussion started by: jcdole
1 Replies

3. UNIX for Dummies Questions & Answers

Using "mailx" command to read "to" and "cc" email addreses from input file

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)
Discussion started by: asjaiswal
2 Replies

4. Solaris

Descrepencies in o/p of "df -h" and "df -h /home"

Hello, In my system, there are descrepencies in the output of "df -h" and "df -h /home" when i give df -h , it does not show any entry for /home, wheras for df -h /home it gives the below o/p Filesystem size used avail capacity Mounted on auto_home ... (1 Reply)
Discussion started by: Laxxi
1 Replies

5. Shell Programming and Scripting

awk command to replace ";" with "|" and ""|" at diferent places in line of file

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)
Discussion started by: shis100
7 Replies

6. UNIX for Dummies Questions & Answers

Explain the line "mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`"

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)
Discussion started by: Lokesha
4 Replies
Login or Register to Ask a Question