Applescript: Create a Folder from Files of Same Name but different Extension
Hi guys,
Racking my brain for the past 2 hours trying to figure out how to properly use Applescript but alas to no avail.
My problem is as follows.
xxxxxxx.extension1
xxxxxxx.extension2
yyyyyyy.extension1
yyyyyyy.extension2
zzzzzzz.extension1
zzzzzzz.extension2
I've been trying to create an applescript that takes files of same name and create a folder with the name of those files grabbed.
So ultimately it would look like
xxxxxxx/
xxxxxxx.extension1
xxxxxxx.extension2
yyyyyyy/
yyyyyyy.extension1
yyyyyyy.extension2
zzzzzzz/
zzzzzzz.extension1
zzzzzzz.extension2
Can some more more adept at this than me provide with a solution? It would be great if I could use by just selecting the folder that contains all these files.
Also can anyone suggest an beginner's book on Applescript? I'm a bit or an order freak and Im sure applescripting could help me automate a lot of repetitive tasks Im currently doing.
Thanks!
This will do what you need.
set source to (((path to desktop folder) as text) & "Test") as alias
tell application "System Events"
set fnames to (name of every file of source)
end tell
set AppleScript's text item delimiters to "."
repeat with fname in fnames
try
set folderName to text item 1 of fname
if folderName is not "" then
tell application "Finder"
if not (exists (folder folderName of source)) then
make new folder at source with properties {name:folderName}
end if
move file fname of folder source to folder folderName of source
end tell
end if
end try
end repeat
(the code formatting here really s*?ks. select all the text in the box and right click and select services make new AppleScript to get it into the editor)
It's not very polished so be careful, setup some test folders and make sure it does what you want before using it on your live data.
You need to set the
set source to
line to the path of the folder where the files are. You can do that as an absolute path ie "Macintosh HD:Users:etc" or using the path to as in the example.
It is also not very efficient and there are many different ways to attack this problem. If this is a one time thing this will be fine. If it will be an ongoing situation you might want to describe exactly what is happening and other ways to solve the problem might be possible.
As for learning AppleScript start with the Apple Development Site, especially AppleScript Language Guide.
There are lots of sites out there with good info MacScripter being one of the better ones.
Book wise I really like Learn AppleScript by Apress. Its good as both a tutorial and reference and has a good intro to AppleScript Objective-C (a way Apple ahs setup to allow AppleScripts to access pure objective-c code and the OS X GUI).
good luck
Similar Messages
-
Importing files with same name but different extensions
Hope I will be clear enough.
Lets say that instead of sending a file from Lightroom to an external editor, I open it directly in Photoshop.
When I'm done, I save the edited photo using the same name but in a different file format : IMG_1333.cr2 > IMG_1333.psd or IMG_1333.tif, and selecting the same folder location.
Then, I come back into Lightroom and synchronise the folder.
Why is the knew version of the picture not showing up beside the original file, despite the different extension ?
I notice that the different extensions ( .psd or .tif ) are recorded in the sidecar files field in the Metadata panel.
Of course, everything works fine if the file name is modified ( or just by selecting the "copy" option in Photoshop's "save as" dialog box ). Lightroom synchronise dialog shows the new photo to import.
So, why is Lightroom not making a difference between files with the same name but different format extensions ?
Thanks for any hint :-)
Gilles.Gilles-
I think your problem is likely that you have the option to stack the copy with the original turned on. First, right-click on one of these photos and go to the stacking menu. If Unstack is not grayed out then you have a stack -- select Unstack to reveal all copies.
To change the automatic stacking of edited copies from Photoshop, when you next choose to edit a file, in the bottom left corner of the dialog is the check box for unstacking. Clear it, and that choice should "stick" until you change it again.
Hope this helps!
Tony -
Change selected file to a file with same name but different extension.
So I'm getting better at using Automator to create useful Services but still a bit of a newbie with doing powerful things with AppleScript... and I think this task requires some applescripting. Here's what I want to do:
1. Based on a selected text file I want to run a pre-existing script that converts this file into an HTML file. This new file has the same name as the text file but has the .html extension rather than the .txt extension. (This step is easy enough and it works just fine already.)
2. BUT NOW, I want to take that resulting HTML file and run another pre-existing script that converts the HTML file into an RTF file. The problem is that I basically want to change the selection from selectedfile.TXT to selectedfile.HTML so that I can proceed to this next step...
3. AND THEN, I want to launch an app with this resulting RTF file. Again, I need to change the selection to selectedfile.RTF.
Right now this requires me to run three different services, and changing the selected file between each step... But I'm sure there's an easy applescript way (or other way) to do this using just one service -- probably involves some filename parsing and some magic to change the selection??? -- or something like that...
Could anyone point me in the right direction???
Thank you thank you thank you!
~zyyyyYou can chain your scripts together - depending on the complexity of your pre-existing scripts, you could do this with either AppleScript or Automator. The workflow would just take the selected text file (from step 1), convert to both HTML (2) and RTF (3), then launch your application with the resulting RTF - no need to change any selection.
By the way, this is the Tiger Automator forum - Snow Leopard's Automator is quite a bit different, so you will probably have better luck posting in the Snow Leopard forum. -
Upload and download the file same name but different extension from the document library.
HI,
I am using the Client Object Model (Copy. Asmx ) To upload and download the file from the document library.
I am having the mandatory File ID for the each Document.
I tried to upload the the document (KIF53.txt) with File ID (KIF53) uploaded successfully.
Again I tried to Upload the document(KIF53.docx) With File ID(KIF53) its uploaded the file but it not upload the File ID in the Column
Please find the below screen shoot for the reference.thanks ashish
tried
My requirement is to create the folder and sub folder in SharePoint document library. If already exist leave it or create the new folder and the subfolder in the Document library using client side object model
I able to check for the parent folder.
But cant able to check the subfolder in the document library.
How to check for the sub folder in the document library?
Here is the code for the folder IsFolder alredy Exist.
private string IsFolderExist(string InputFolderName)
string retStatus
= false.ToString();
try
ClientContext context
= newClientContext(Convert.ToString(ConfigurationManager.AppSettings["DocumentLibraryLink"]));
context.Credentials = CredentialCache.DefaultCredentials;
List list
= context.Web.Lists.GetByTitle(Convert.ToString(ConfigurationManager.AppSettings["DocumentLibraryName"]));
FieldCollection fields
= list.Fields;
CamlQuery camlQueryForItem
= new CamlQuery();
camlQueryForItem.ViewXml = string.Format(@"<View
Scope='RecursiveAll'>
<Query>
<Where>
<Eq>
<FieldRef Name='FileDirRef'/>
<Value Type='Text'>{0}</Value>
</Eq>
</Where>
</Query>
</View>", @"/sites/test/hcl/"
+ InputFolderName);
Microsoft.SharePoint.Client.ListItemCollection listItems
= list.GetItems(camlQueryForItem);
context.Load(listItems);
context.ExecuteQuery();
if (listItems.Count
> 0)
retStatus = true.ToString();
else
retStatus = false.ToString();
catch (Exception ex)
retStatus = "X02";
return retStatus;
thanks
Sundhar -
How to mass-reindex files with same name but different file extensions
(reposting cos I'm confused about if I posted in the proper place before. Please delete if it is a repost.)
So I'm on a remote workflow. I pick all the raw data and convert it in two quality standards, one on 'high' with full specifications and one on 'low' so I can send 2gb instead of 80gb of files through the internet for me to work remotely on, and to speed up the overall work rhythm because files are lighter. All I need to do is to work at my home with the low quality files, send it back to the client's computer after finished, re-index all files in their high resolution twins and we are good to go to finish the product with highest quality possible. But both high and low quality files need to be the same extension, that I picked .mp4 for it is the standard for pretty much anything.
The point is, if I want to go full mobile, I only have an old HP Pavillion notebook and I really need to work with a video codec that goes very easy on it. I can only think about some 16:9 DV format. But the point is, this format generates a different file extension than my .mp4 standard, and Premiere, to my knowledge, really can't reindex files using only the file name while ignoring the file extension. It really should. And I really need to know how.
We also need to consider Premiere versions that allow themselves to be installed at x32 processors. My desktop is x64 and I really have no problem to work on these standards, the problem is, in my notebook I really can't.
So, halp?i want to say it was added in cs7, which requires subscription, so in that case might as well be using latest version 8. if you had to use an older version like cs5, you could still use h264 or low bitrate dnxhd/prores codecs inside a quicktime .mov file. that would allow you to have same file ext on both versions of files.
-
Two methods with same name but different return type?
Can I have two methods with same name but different return type in Java? I used to do this in C++ (method overloading or function overloading)
Here is my code:
import java.io.*;
public class Test{
public static void main(String ar[]){
try{
//I give an invalid file name to throw IO error.
File file = new File("c:/invalid file name becasue of spaces");
FileWriter writer = new FileWriter(file ,true);
writer.write("Test");
writer.close();
} catch (IOException IOe){
System.out.println("Failure");
//call first method - displays stack trace on screen
showerr(NPe);
//call second method - returns stack trace as string
String msg = showerr(NPe);
System.out.println(msg);
} // end of main
public static void showerr(Exception e){
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
try{
pw.close();
sw.close();
catch (IOException IOe){
IOe.printStackTrace();
String stackTrace = sw.toString();
System.out.println("Null Ptr\n" + stackTrace );
}//end of first showerr
public static String showerr(Exception e){
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
e.printStackTrace(pw);
try{
pw.close();
sw.close();
catch (IOException IOe){
IOe.printStackTrace();
return sw.toString();
}//end of second showerr
} // end of class
[\code]Overloading is when you have multiple methods that have the same name and the same return type but take different parameters. See example
public class Overloader {
public String buildError(Exception e){
java.util.Date now = new java.util.Date() ;
java.text.DateFormat format = java.text.DateFormat.getInstance() ;
StringBuffer buffer = new StringBuffer() ;
buffer.append(format.format(now))
.append( " : " )
.append( e.getClass().getName() )
.append( " : " )
.append( e.getMessage() ) ;
return buffer.toString() ;
public String buildError(String msg){
java.util.Date now = new java.util.Date() ;
java.text.DateFormat format = java.text.DateFormat.getInstance() ;
StringBuffer buffer = new StringBuffer() ;
buffer.append(format.format(now))
.append( " : " )
.append( msg ) ;
return buffer.toString() ;
public String buildErrors(int errCount){
java.util.Date now = new java.util.Date() ;
java.text.DateFormat format = java.text.DateFormat.getInstance() ;
StringBuffer buffer = new StringBuffer() ;
buffer.append(format.format(now))
.append( " : " )
.append( "There have been " )
.append( errCount )
.append( " errors encountered.") ;
return buffer.toString() ;
}Make sense ???
Regards, -
How to check-in multiple files with same name having different revision num
Hi
Can anyone please tell me, how to check-in multiple files with the same name with different revision number using RIDC API.
For eg:
First I will check-in a file(TestFile.txt) into a content server with revision number 1 using RIDC API in ADF application. Then after some time, will modify the same file(TestFile.txt) and check-in again. I tried to check-in same file multiple times, however first time its checking-in correctly into server showing revision as 1, while checking-in same file again, its not giving any errror message, and also its not reflecting in server. Only one file(TestFile.txt) is reflecting in server.
How to implement this functinality using RIDC API? Any suggestions would be helpful.
Regards
Raj
Edited by: 887680 on Mar 6, 2013 10:48 AMHi Srinath
Thanks for your response. Its not cloning, its like check-in file first, then check-out the file and do some editing and then again upload the same file with different revision number using RIDC. I got the solution now.
Regards
Raj -
Two AM's with the same name but different forms causes Deployment problems
Two Masters forms, DOC & PM are cloned except for the "where clause" in the View's query and the titles in their JSP's.
DOC workspace has a BC project and a BC4JSP Project. The BC project comprises of the EO and VO named ComVsStaticValue. In the Edit prop-> query for the VO I have specified the "where clause" as VSSV_VS_CODE='DOCTOR'.
In Java Webserver :-
The JSP's are located in C:\source\Doctor\ .. and the *.xml and *.class files generated by the BC proj is in C:\source\Doctor\pol_ValueSet\..
If I execute Doctor in JWS the records are getting filtered properly.
PM workspace has a BC project and a BC4JSP Project. Again The BC project comprises of the EO and VO named ComVsStaticValue. In the Edit prop-> query for the VO I have specified the "where clause" as VSSV_VS_CODE='PAY_MODE'.
In Java Webserver :-
The JSP's are located in C:\source\PMode\ .. and the *.xml and *.class files generated by the BC proj is in C:\source\PMode\pol_ValueSet\..
If I execute PM in JWS, the PM's JSP comes (the title is correct) but the records pertaining to DOC appears. I checked the View's xml file in C:\source\PMode\pol_ValueSet\ the "where clause" is correct. The xml & classes have the same name but their contents are different.
I want to know whether this problem is because both have the same name for the AM and the BC4JSP's property file.
Please clarify.Deploying two app modules with the same name will definitely cause problems.
The JSPs use the information in the properties file to connect to the application module and get the data they need from the appropriate View Objects in those app modules. If you have two app modules with the same name, when a JSP tries to connect, it has no way of knowing which one of the app modules to connect to if they both have the same name.
You could:
1. Just use one application module that contains all the View Objects you need to access.
or
2. Rename one of the application modules or the package it is located in so the names are distinct. If you choose this method, you will also need to update the JSPs (specifically the 'registerApplicationFrompPopertyFile' method call), and your JSP project's appmodule property file. -
I am unable to connect to two different wi if at different locations having same user name but different password one is at home other at work
I was able to do a full reset on the router (pushing the tiny button near the power input). Then ran through the setup process and it started working on my device.
-
Hi, I would like to denoise Voice Over files with help of Auditions Batch Process. However, I have to save the files with the same name as the original, so that I can simply relink them in Premiere. Since I do want to keep the originals, I would like to save the processed files to a different location.
Unfortunately, Batch Processor adds " Copy" to the processed files and moves the originals along with the processed files to the new folder (causing Premiere to loose the original files).
Can I achieve my goal with Batch Processor, and how would I have to configure it?
Kind regards,
AndreasWhich version of Audition are you using? The latest ones allow you to specify where the batched files are saved and also if any Prefix or Postfix are added to the file name. These are all under Export Settings in the Batch Process pane. However you must have the Export box ticked to give you access to the settings.
-
Files with same name in different packages
I have a file with the same name defined in two different packages.
When I generate the javadoc, I get an error saying that
Class com.eg.toolkit.Email already defined in com.eg.common.Email.java
Does javadoc expect all files to be of different names acroos packages?
Thanks
ChintuYou can use the same class name in different packages.
The Java API does that (java.awt.List, java.util.List).
This is odd. What version of javadoc are you using,
and what command are you passing in, with what classpath setting?
-Doug Kramer
javadoc team -
Grouping albums with same name but different artist?
I have two albums in iTunes 7 which will not group correctly - either they show up as 24 or so separate albums or a single compilation or so on! I've tried marking them as compilations, as not compilations, you name it.
They share the same album name, but have different artists and genres. How can I convince iTunes that they are two distinct albums? (I would have thought this test should be part of the application's logic, to be honest!)
GavinNote: I have this album set to be a compilation, I have filled in Queen in all 17 tracks as the album artist and all 17 tracks have the same Album name, it still does not group together properly when sorting by Album Artist (only when sorting by Album Name).
iTunes 7 adds support for the ¨Album Artist¨ tag (as used and required by Windows Media Player). Adding support for this tag was actually a request I made myself a while ago.
Unfortunately iTunes is not using this tag in a useful way (as it was intended). The purpose of this tag (as used by Windows Media Player) is to cope with Albums that contain more than one artist, a good example album is Queen's Greatest Hits III (see http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewAlbum?id=161431875&s=14344 4 ) this album contains tracks by or featuring David Bowie and George Michael (amongst others) as well as Queen themselves, despite this, everyone would consider the Album itself to be by Queen.
The purpose of the Album Artist tag is so that you can browse by the Album Artist and see the entire album listed (and not just those tracks specifically by Queen themselves). Therefore iTunes should if in browse view mode and sorted by Album Artist show the entire album grouped together - IT DOES NOT. Instead it appears to be being sub-sorted by Artist (as well as Album Artist) and this results in it being split in to 3 or more sections. This applies to all three view modes including the Coverflow view.
As things stand the only benefit I get from iTunes now supporting the Album Artist tag is greater compatibility with Windows Media Player, apart from that it appears completely useless in iTunes as currently implemented. -
Unable to protect 2 computers with same name, but different Domains
DPM 2012 R2 and UR2
All DC:s and servers are 2012 R2 + Latest patches.
ad.A.com has full 2 Way trust with ad.B.com. (Different forrest)
DPM Server is DPM.ad.A.com
Computer EXCH.ad.A.com is protected without problem
Computer SQL.ad.B.com is protected without problem
When I try to attach agent from EXCH.ad.B.com I'll get problems.
Error 346: DPM is unable to retrieve the configuration information from EXCH.ad.B.com
I'll guess this has to do with same name of computer, although in different domains. Is this as Designed, or is it a defect?
/Peterplease try a different User to attach/install the DPM Agent.
if this is not the solution, you maybe have a Problem with wmi, try and test with wbemtest
Seidl Michael | http://www.techguy.at |
twitter.com/techguyat | facebook.com/techguyat -
Hi everybody!
I have in a little trouble ....
*** Scenario.
Oracle Enterprise Edition 11gr2 over Oracle Solaris 11
3 instances: PROD, QA, DEV
1 ASM instance
Listener ports: 1520, 1530 & 1540
Those are production system
*** The problem:
Customer can't pay Oracle EE, they want to change to Oracle Std One
Limitations:
I cant have a similar system to test.
*** My idea:
Install Oracle Std One, in the same path:
/u01/app/oracle/product/11.2.0/db <-- EE
/u01/app/oracle/product/11.2.0/db_one <-- Std Ed One
ASM:
/u01/app/11.2.0/grid <-- EE +ASM
/u01/app/11.2.0/grid_one <-- Std Ed One +ASM1
Create databases:
Asign similar disks to +ASM1
Create DGs on +ASM1
Create databases: PROD, QA, DEV for Std Ed one
- is it posible that they have same instance name?
- if not, i suppose create as: PROD1, QA1, DEV1
Configure Listener port : 1521, 1531 & 1541
Migration technique:
Create Tablespaces, schemas
Lock users in EE
down listener: 1520, 1530 & 1540
Import data of final users in a window maintanance
configure and up listener: 1521, 1531 & 1541
Customer should test access and apps in new
Please tell me if my Idea is reallistic, all comments are going to be very apreciated.sol.beach
I suppose end customer use a port per database in order to separate in a logical way the access to the databases,
i mean PROD, QA & DEV has the same users.
Hemant K Chitale
1. I've seen physical servers with 3 ASM instances: +ASM1, +ASM2, +ASM3
on Solaris & Oracle 10g, I suppose is posible on 11g
2. The sever has occupied 2 sockets (2 physical CPU), so I can use Oracle Standard Ed One.
JohnWatson2
Thanks for your comments.
WadhahDaouehi
1. - You cannot run two ASM instance simultaneously on one Server, but you can run many Oracle database simultaneously
on the same server which they use the ASM as storage type.
As a mentioned to Hemant K Chitale, I've seen a system with several instances running
About
"you can run many Oracle database simultaneously on the same server which they use the ASM as storage type."
I'm not sure if i can use the same ASM which is part of a current Enterprise Ed over the new installation with Oracle Std Ed One.
2. - Why you want the same instance name?
If it is about the service name, which has by default the same instance name, just you can create a different instance name
and create the service name with the name that you wish.
SQL> alter system set service_names='instance_name';
Is a similar name, not the same
PROD, QA & DEV
PROD1, QA1 & DEV1
I consider add "1" at the end to refer "Oracle Standar Ed One"
But I agree with you, i can customize throught service_name.
Regards,
Abraham Mtz. -
Using multiple SSIDs with same name but different PSKs
I have a central WLC 2504 controller that is being used for remote site FlexConnect 1141 APs. They all advertise three different SSIDs. One SSID is a global SSID that is the same at every office. One is a hidden SSID using 802.1x machine auth.
The one I am trying to get working is the local office guest network. These SSIDs are all the same at each office but should have different PSKs. They are local to the office, therefore would only ever be applied to a specific FlexConnect group.
I understand why in theory this is generally not a good idea but given these are for remote sites I'd like it to be possible. I always get this message though:
"WLAN with duplicate SSID and L2 security policy found"
Is there a way around this? New WLC code that allows it maybe?I was able to configure three (more I think possible) WLANs with same SSID name and all are WPA2-AES-PSK on the same WLC and all are enabled at hte same time.
Note that you can not have any of those broadcasting on same AP group. Each WLAN can be only broadcasted on a separate AP group. For your sites, It will probably need you to define an AP group for each site to broadcast different WLANs on different sites.
You can do that if all your WLANs have an ID of 17 or higher. (the reason is, WLANs of 1-16 are by default broadcasted on the default AP group. and because those can not be on the same AP group - including the default one - then you can't have them with WLAN IDs 1-16. i.e on same - default - AP group)
HTH
Amjad
rating useful replies is more useful than saying "Thank you"
Maybe you are looking for
-
My ipad screen suddenly went dark without any external forces. At first I can hear the unlock/ lock sound when I slide across the screen and so touching is not a problem. I proceeded to sync my ipad and was prompted to upgrade to ios 7.0. I upgraded
-
not only safari is getting more difficult to use,its the flash problem for exemple,but also now it becomes strange when i change some settings (before when i open the safari window,it open with the top sites..now its impossibel to do this..i change t
-
Mac OS X 10.5 Leopard and WWDC. When?
The new mac os system software is coming out during the WWDC taking place from aug. 7 to 15, correct? Does that mean all iMacs and other intel duo macs will be equipped with the new system? Will I be able to buy a new iMac on Monday (Aug. 7) that has
-
Do out of order iTunes 11 tracks sync to iPod?
The upgrade to iTunes 11 caused various albums to show out of order track listsings in expanded view. We haven't re-synced our iPod to iTunes since the update for fear that this mis-ordering will be brought over to the iPod. Will the new track order
-
How can ad PHP heading in Coding
Dear all, I am created a PHP form working fine i want to put a heading between the coding 1) I want put a heading Know Your Interest: in between Email Address:- and 2-Bed Room Apt.:- because when somebody fillup the form & submit we get a club