Windows – Move files to a folder that contains only part of their name

I have a bunch of files that I try to organize in folders based on the first 11 characters (Ex: X-01234-567), and some of the files contain a description of those numbers, which they can use to identify what they are. I could create folders containing only these 11 characters, and then move all files that start with the appropriate 11 characters into those folders. The problem I have is that there are already a bunch of folders that have more than just these 11 characters (eg X-09902-024 adapter, 0.38 NPT) etc. I want the batch file Look for folders that already contain the same first 11 characters as the part, and then move the part to that folder if they match. Otherwise, if there is no folder, you can create one. Attached are screenshots of the different options that I have tried. I assume it's something very simple, but I can not figure out the syntax.

I did not know that I could not add pictures yet, so here are the copies of the two different batch files I've tried. Thanks in advance for your help.

@echo off

set "basename =".
for / F "token = 1 * delims =." %% a in (& dir / B / A-D ^ | sort / R)) do (
set "filename = %% a"
setlocal EnableDelayedExpansion
for / F "delims =" %% c in ("! basename!") if "! filename: %% c =!" equ "! filename!" (
set "basename =! filename: ~ 0,11!"
if not available "! Filename: ~ 0.11!" md "! basename!"
move "! filename !. %% b" "! basename!"
for / F "delims =" %% c in ("! basename!") do (
set "basename = %% c

The second one I tried is here:

@echo off
for / f "delims =" %% F in (
& # 39; Dir / b * .dwg * .jpg * .pdf * .slddrw * .sldprt * .sldasm * .STEP ^ | findstr "^[X]-[0-9][0-9][0-9][0-9][0-9]-[0-9][0-9][0-9]"& # 39;
) Call: subr "%% F"
Exit / b

: subr
set "file =% ~ n1"
set "fold =% file: ~ 0.11%"
if not available "% fold% *" md "% fold%"
Move% 1 "% fold%"

Image in which the script works when a folder has been created

The attached image shows how the files are inserted into the folder when created by the script. However, there was a folder with the same name except for more characters, leaving it empty. Please let me know if you need something.

unity – How do I check if a given instance of a finished part is pressed?

This is hard to explain, so I'll show the code first –

for (var i = 0; i <Input.touchCount; ++ i)
if (Input.GetTouch (i) .phase == TouchPhase.Began)
Ray ray = Camera.main.ScreenPointToRay (Input.GetTouch (i) .position);
RaycastHit2D Hit = Physics2D.Raycast (ray.origin, ray.direction);

                                                if (hits)
clicksNeeded - = 1;
GetComponentInChildren() .text = "" + clicksNeeded;
Debug.Log (clicksNeeded);
print ("was a hit");

I need to check if the hit touches the particular game object the script is linked to. For example, if one of the circles is clicked, clicksneeded – = 1 for all currently instantiated objects.

Thanks for your help!

professional car part spinning machine

Guangdong PROSPER CNC Machine Co., Ltd. is a high-tech enterprise that integrates scientific research, production, sales, teaching, training and service. The company has production, research, development and operations base and was certified to ISO9001: 2000 Quality Management System in 2006. For the past 20 years, we have been dedicated to producing metal forming machines such as CNC metal spinning machines, multi-point CNC milling machines and high-performance milling machines machining center.
On the basis of loans, the company contributes significantly to supporting customers with fast, efficient and automatic production. To enhance the strength of the technical team, the company has increased its investment in research and development from year to year.
So far, our products are sold in 50 countries and are the most popular equipment in the global industry. We pay attention to product brand, quality and responsibility, perform a rigorous inspection and actual operation of each product before delivery, build a nationwide service network and provide full service to customers. The subordinate PROSPER Skilled Workers School establishes the appropriate major subjects through strong resources of the company to closely interconnect the teaching and production of the company, and trains outstanding composite talents for the society. For CNC machines qualified operators are available! professional car part spinning machine

Why will design patterns usually not be part of a design system?

I've seen many front-end development frameworks, which are simply a collection of UI components and page layouts that developers use to build new applications. However, it should come as no surprise that a consistent collection of components does not guarantee a consistent feel (you may have the look), as there are still a variety of ways to implement a set of interactions on a page.

Design patterns were very popular in the early days of UX design when developers realized that there were a number of common problems that could be solved by standard (generic) interactions that are not recognized by the UI components. If you combine the design patterns with the UI components in your development framework, you have (at least in my opinion) a more consistent way to implement the UI.

Why are design patterns often not part of the design system? I'm still curious why style guides and development frameworks (mostly) still exist as separate entities when design patterns can help improve the consistency of the design.

Part 1 – Low End Box

In the professional Linux webhosting world, cPanel rules as king. That is not necessarily a bad thing! cPanel is rich in features and largely stable and reliable. But it is also completely unsuitable for a small, inexpensive VPS, which you will find here at LowEndBox. Most likely the The license for cPanel costs significantly more than the VPS you use, and the resources of a smaller VPS are heavily loaded. Does that mean that you're out of the web hosting game altogether? Not for a long time! We have an excellent number of open source control panel options. In this tutorial, we will focus on installing such a solution:

Enter Virtualmin. Virtualmin GPL (the free open source version of the commercial product Virtualmin) is a full-featured open source web hosting control panel that lets you run multiple websites on the same server. Virtualmin uses less disk space (less than 1 GB) and supports CentOS, Debian and Ubuntu without any additional complications. It has a user-friendly web-based user interface for server and account management. It also respects the package manager of your chosen operating system and allows you to make configuration changes outside of Virtualmin without overwriting them.

For this tutorial we go to Virtualmin on a CentOS 7 VPS, which can be found here on LowEndBox. Our KVM-VPS has 15 GB hard disk space, 1 CPU and 512 MB RAM. How is it possible to have a complete web control panel on such a small server, you ask? Read on to find out!

You must use SSH for this tutorial. If you have not signed up for your new VPS yet, read our tutorial. "Use SSH keys to connect to your VPS, "It helps you to sign in and configure your SSH keys.

If you have not yet selected a host name for your server, you must do so now. It can be tempting to use "". To work properly, a fully qualified domain name is required. An FQDN uses a prefix like "server" before "virtualmin-tutorial.tld". The FQDN would be "server.virtualmin-tutorial.tld".

If you have already selected a name for your VPS, it will be set for you by your VPS provider. Otherwise you have to set it manually. On CentOS 7, you can set the host name using SSH with the following command:

echo "server.virtualmin-tutorial.tld"> / etc / hostname

Next we disable SELinux, as its use is not supported for our purposes. We use & # 39; sed & # 39 ;, a Linux program that can do file editing without having to open the file at all. The following command changes the current line SELINUX = in / etc / selinux / config to "disabled":

sed -i's / SELINUX =. * $ / SELINUX = disabled / & # 39; / etc / selinux / config

Restart your server to make sure your hostname is set correctly and SELinux is disabled:


Log in to your VPS again and check the hostname to make sure it's set correctly:

[root@server ~]# Hostname

Let's also check if SELinux is disabled:

[root@server ~]# getenforce

Excellent! Now we will install some basic utilities, including a few that will help us install Virtualmin. Run the following command:

yum -y install perl lsof sysstat lsof traceroute whois wget ftp nano

Now we are ready for the next step: Installation!

To integrate Virtualmin into our little VPS, we use the Virtualmin installer minimal installation This feature essentially removes the main memory interventions – the e-mail server. Although it is possible to install the mail server with 512 MB of RAM, this is not recommended as spam filtering slows down the server considerably. If you want to enable Virtualmin's mail server capabilities, it's a good idea to install a VPS with at least 1GB of memory.

Using Virtualmin provides the ability to install Apache, MySQL, and PHP for you. We use the minimal installation as mentioned before. If you have a server with at least 1 GB of memory, you can omit the "-minimal" tag below.

sh --minimal

This is what the installation looked like on our test VPS:

Press "y" to continue. Now we only wait a few minutes for Virtualmin to install its minimal stack. As we wait, we talk about what's next. Minimal installation skips many of the most memory-intensive parts of the server, but installs a full LAMP stack. In 10 minutes or less, the installation should be completed! You should see something similar to the following screen:

In the lower right corner you will see a URL for the new control panel of your server. Copy this URL into your notes. Before we move on, we need to set the root password for MySQL. MySQL does not have a root password. This is not a secure configuration. Luckily that is very easy to solve. In the following few commands, replace "ROOTPASS" with a strong password. The password you choose does not have to be your root password. Make sure that you have a record because we will need it later.

First enter "mysql" to get a mysql prompt:

[root@server ~]# mysql
Welcome to the MariaDB Monitor. Commands end with; or  g.
Your MariaDB connection ID is 25
Server version: 5.5.60 MariaDB MariaDB server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Enter "help". or & # 39;  h & # 39; for help. Enter & # 39;  c & # 39; on to clear the current input statement.
MariaDB [(none)]>

Now, after correcting the root password, you can insert:

Use MySQL.
Update User Password = PASSWORD ("ROOTPASS") where User = & # 39; root & # 39; is;
Flush privileges;

This is how the process looked on our VPS:

Log in to the URL of the Virtualmin control panel that you previously noted. Ours is ours https: //server.virtualmin-tutorial.tld: 10000, You will also notice that you receive a security alert during your visit. The SSL at this time is just a self-signed certificate. Invoke the URL in your browser, bypass the SSL certificate errors, and you should be greeted with a login screen for Webmin. Do not be alarmed – Webmin is based on Virtualmin and the actual server management is still done with Webmin. Virtualmin handles the virtual hosting part of the workload.

Log in with the username "root" and your root password. The wizard after installation is displayed. If you get a connection error, try using a private browser. Some browser extensions interfere with Virtualmin.

Click Next, and we'll work through the different options. The first question is whether we want to pre-load the Virtualmin libraries. We will choose No to minimize storage requirements. If you have a VPS with at least 1 GB of memory, you can select Yes.

The format is the same for the remaining questions.

Running a MariaDB / MySQL database server? Yes (almost everything uses that!) 
Run PostgreSQL database server? No (unless you specifically need it)

Next click

Now you will see the MySQL password section of the wizard:

Enter your root password for MySQL that you have previously set. When prompted, select Yes to remove the test database and the anonymous user. Next click.

For the MariaDB / MySQL configuration size, select Medium System (512M). If you have a larger system, you can choose the appropriate size. Next click.

For the DNS configuration you have to select some options. Since our system is only 512 MB in size and the BIND DNS service may be a storage issue, our DNS will be run externally. To do this, you can simply check the "Skip resolution check" box and click Next.

The next configuration option is for password storage. Make a choice that makes sense for you. We selected "Save only hash passwords" for more security. Click Next, and you're done with the post-installation wizard. Click the "Recheck and update configuration" box and let it finish:

When the Verify Configuration screen is complete, click the dashboard in the left column. You get the following screen:

This is the first screen you will see when you sign up. The work is not done yet – we still have some things to do! In the next steps, you need to set up an SSL certificate for Virtualmin, configure Apache to use less disk space, install an updated version of PHP, and make some changes to the PHP configuration. All these things are considered in the second half of this tutorial:

Configure Virtualmin on CentOS for Website Hosting: Part 2