I want to change directory to a fixed base ($photos)/$mn obtained from current year month.
If i put that all together correctly you have two problems:
1) obtain the directory name from the date in the form you want.
2) change into that directory or create it if it is not there.
Assuming that this is correctly stated, here are your solutions:
1) use the date command. It wil output the current date (and time) but you can give it a "format string" which will determine in which form you want to output to be formatted. Part of this "formatting" is also the addition or removal of certain parts of the date.
To get the current date and time:
Now, let us look at the man page of date (this should always be your first reference when trying to figure out what a command does and how it does it):
OK, so we have date +format where we still have to determine what "format" should be. So, reading further in the man page, we find (among many other formats):
So let us have a try:
Problem 1 solved.
For the second problem: you do not need to test it! mkdir knows the -p option, which will create a directory, if it is not there - complete with the whole path leading up to it. Instead of:
you can as well write
Which will create the directory /some if it doesn't exist (if it does exist, nothing happens), the in it this directory create /some/where if it does not exist (again, if it does nothing will happen), and so on.
So, your script could contain something like:
As a general rule: never use relative pathes in scripts, always only absolute pathes. This way your scripts will always do the same to the same files and will not produce different results just because you called them from a different directory. Also, never use cd in a script. First, you will not need it if using absolute pathes and second, you shouldn't have to change the environment for a script to use. If you want to copy files to a directory you do NOT do:
But instead you do:
I hope this helps.
bakunin
Last edited by bakunin; 01-09-2019 at 04:03 PM..
Reason: addendum
Hi,
I look for a script to create 150 directories :
d000
d001
d002
...
...
d149
would you help me please ?
I think it would be
for i
mkdir d$i
Many thanks.
PS :
#uname -a
AIX fserver 3 5 0050691A4C00 (2 Replies)
Is there ant way to increase max number of folders in the directory from the 32766:
Problem UFS:
shell>mkdir mmm
mkdir: mmm: Too many links
But there are no links, just folders.
shell>ls | wc -l
32766 (3 Replies)
I am having a problem getting this to work right. The script needs to search through directories and subdirectories. If a jpg is found then create a folder in that directory, so on and so forth. Here is what I have so far but it doesn't work right. Help please
#!/bin/bash
for d in `find ./... (1 Reply)
Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!
1. The problem statement, all variables and given/known data:
Do the procedure, which if there are 5 parameters then it creates 4 directories with names of 4 parameters, in... (2 Replies)
Hello,
I'm pretty new to scripting and trying to do a simple (well, I thought so) administrator task. I'm using bash.
I want to create 10 directories under the one directory and apply permissions at the same time.
I've worked out the make directories part: mkdir /userdata/folder{1..50}... (7 Replies)
Howdy,
Puttering around in unix, and read this in the mkdir man page:
"The mkdir utility creates the directories named as operands..."
What does this mean, i.e. as operands?
Many thanks,
DN (2 Replies)
Hello, :)
I've an issue with the creation of a directory, All work without it :mad: So, below, my scripts with the debug output :
#!/bin/bash
# PATHS
HOME_BACKUP="/home/backup"
HOME_SCRIPT="/home/scripts/test/backup_server"
TARGET="/var/www"
# DATE
DATE_Ymd=$(date +%Y-%m-%d)
#... (1 Reply)
hi linux expert
what is a difference between:
mkdir test and mkdir ./test
and also
if ( -e /test ) then and if ( -e ./test ) then
thanks in advance
Please use icode or code tags next time for your code and data (1 Reply)
I have a file with lines like:
111 12 7
111 13 8
112 12 9
115 31 3
120 31 9
123 10 7
125 12
I want to make a script which, split the first column into parts (101-110, 111-120...), and make directories for its part with name (101-110, 111-120...) Also i want in every directory include... (7 Replies)